diff --git a/.github/workflows/linux-wpt.yml b/.github/workflows/linux-wpt.yml index 73481bb467a..ae8247d1579 100644 --- a/.github/workflows/linux-wpt.yml +++ b/.github/workflows/linux-wpt.yml @@ -55,7 +55,7 @@ jobs: run: | python3 -m pip install --upgrade pip virtualenv sudo apt update - sudo apt install -qy --no-install-recommends libgl1 libssl1.1 libdbus-1-3 libxcb-xfixes0-dev libxcb-shape0-dev libunwind8 libegl1-mesa + sudo apt install -qy --no-install-recommends libgl1 libssl1.1 libdbus-1-3 libxcb-xfixes0-dev libxcb-shape0-dev libunwind8 libgl1-mesa-dri mesa-vulkan-drivers libegl1-mesa sudo apt install ./libffi6_3.2.1-8_amd64.deb python3 ./mach bootstrap-gstreamer - name: Sync from upstream WPT diff --git a/Cargo.lock b/Cargo.lock index 9ecae3d36df..885c937bd12 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -48,6 +48,17 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" +[[package]] +name = "ahash" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" +dependencies = [ + "getrandom 0.2.8", + "once_cell", + "version_check", +] + [[package]] name = "ahash" version = "0.8.3" @@ -132,12 +143,12 @@ dependencies = [ ] [[package]] -name = "ansi_term" -version = "0.12.1" +name = "android_system_properties" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" dependencies = [ - "winapi", + "libc", ] [[package]] @@ -191,9 +202,6 @@ name = "arrayvec" version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" -dependencies = [ - "serde", -] [[package]] name = "arrayvec" @@ -206,11 +214,11 @@ dependencies = [ [[package]] name = "ash" -version = "0.31.0" +version = "0.37.3+1.3.251" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c69a8137596e84c22d57f3da1b5de1d4230b1742a710091c85f4d7ce50f00f38" +checksum = "39e9c3835d686b0a6084ab4234fcd1b07dbf6e4767dce60874b12356a25ecd4a" dependencies = [ - "libloading 0.6.1", + "libloading 0.7.0", ] [[package]] @@ -716,9 +724,9 @@ dependencies = [ [[package]] name = "cbindgen" -version = "0.20.0" +version = "0.24.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51e3973b165dc0f435831a9e426de67e894de532754ff7a3f307c03ee5dec7dc" +checksum = "4b922faaf31122819ec80c4047cc684c6979a087366c069611e33649bf98e18d" dependencies = [ "clap", "heck", @@ -808,17 +816,26 @@ dependencies = [ [[package]] name = "clap" -version = "2.34.0" +version = "3.2.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c" +checksum = "4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123" dependencies = [ - "ansi_term", "atty", "bitflags 1.3.2", + "clap_lex", + "indexmap", "strsim", + "termcolor", "textwrap", - "unicode-width", - "vec_map", +] + +[[package]] +name = "clap_lex" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5" +dependencies = [ + "os_str_bytes", ] [[package]] @@ -894,6 +911,16 @@ dependencies = [ "objc", ] +[[package]] +name = "codespan-reporting" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" +dependencies = [ + "termcolor", + "unicode-width", +] + [[package]] name = "color_quant" version = "1.1.0" @@ -1049,12 +1076,6 @@ dependencies = [ "version_check", ] -[[package]] -name = "copyless" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ff9c56c9fb2a49c05ef0e431485a22400af20d33226dc0764d891d09e724127" - [[package]] name = "core-foundation" version = "0.6.4" @@ -1259,12 +1280,12 @@ checksum = "b365fabc795046672053e29c954733ec3b05e4be654ab130fe8f1f94d7051f35" [[package]] name = "d3d12" -version = "0.3.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc7ed48e89905e5e146bcc1951cc3facb9e44aea9adf5dc01078cda1bd24b662" +checksum = "d8f0de2f5a8e7bd4a9eec0e3c781992a4ce1724f68aec7d7a3715344de8b39da" dependencies = [ "bitflags 1.3.2", - "libloading 0.5.2", + "libloading 0.7.0", "winapi", ] @@ -1545,7 +1566,7 @@ version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a3aef8ec3ae1b772f340170c65bf27d5b8c28f543a0116c844d2ac08d01123e7" dependencies = [ - "ahash", + "ahash 0.8.3", "epaint", "log", "nohash-hasher", @@ -1561,7 +1582,7 @@ dependencies = [ "egui", "instant", "log", - "raw-window-handle 0.5.0", + "raw-window-handle", "smithay-clipboard", "winit", ] @@ -1682,7 +1703,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09333964d4d57f40a85338ba3ca5ed4716070ab184dcfed966b35491c5c64f3b" dependencies = [ "ab_glyph", - "ahash", + "ahash 0.8.3", "atomic_refcell", "bytemuck", "ecolor", @@ -1700,7 +1721,7 @@ checksum = "50d6a0976c999d473fe89ad888d5a284e55366d9dc9038b1ba2aa15128c4afa0" dependencies = [ "errno-dragonfly", "libc", - "windows-sys", + "windows-sys 0.45.0", ] [[package]] @@ -1770,12 +1791,6 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "86d4de0081402f5e88cdac65c8dcdcc73118c1a7a465e2a05f0da05843a8ea33" -[[package]] -name = "fixedbitset" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d" - [[package]] name = "flate2" version = "1.0.25" @@ -2139,151 +2154,6 @@ dependencies = [ "yeslogic-fontconfig-sys", ] -[[package]] -name = "gfx-auxil" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07cd956b592970f08545b9325b87580eb95a51843b6f39da27b8667fec1a1216" -dependencies = [ - "fxhash", - "gfx-hal", - "spirv_cross", -] - -[[package]] -name = "gfx-backend-dx11" -version = "0.6.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54b43f06089866bdffe59b5a6801022c86b74d2c1dd28940a9cf301d3d014fbc" -dependencies = [ - "arrayvec 0.5.2", - "bitflags 1.3.2", - "gfx-auxil", - "gfx-hal", - "libloading 0.6.1", - "log", - "parking_lot 0.11.2", - "range-alloc", - "raw-window-handle 0.3.3", - "smallvec", - "spirv_cross", - "thunderdome", - "winapi", - "wio", -] - -[[package]] -name = "gfx-backend-dx12" -version = "0.6.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "375014deed24d76b03604736dd899f0925158a1a96db90cbefb9cce070f71af7" -dependencies = [ - "arrayvec 0.5.2", - "bit-set", - "bitflags 1.3.2", - "d3d12", - "gfx-auxil", - "gfx-hal", - "log", - "range-alloc", - "raw-window-handle 0.3.3", - "smallvec", - "spirv_cross", - "winapi", -] - -[[package]] -name = "gfx-backend-empty" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2085227c12b78f6657a900c829f2d0deb46a9be3eaf86844fde263cdc218f77c" -dependencies = [ - "gfx-hal", - "log", - "raw-window-handle 0.3.3", -] - -[[package]] -name = "gfx-backend-metal" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "273d60d5207f96d99e0d11d0718995f67e56533a9df1444d83baf787f4c3cb32" -dependencies = [ - "arrayvec 0.5.2", - "bitflags 1.3.2", - "block", - "cocoa-foundation", - "copyless", - "foreign-types", - "gfx-auxil", - "gfx-hal", - "lazy_static", - "log", - "metal 0.20.0", - "objc", - "parking_lot 0.11.2", - "range-alloc", - "raw-window-handle 0.3.3", - "smallvec", - "spirv_cross", - "storage-map", -] - -[[package]] -name = "gfx-backend-vulkan" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a3a63cf61067a09b7d1ac480af3cb2ae0c5ede5bed294607bbd814cb1666c45" -dependencies = [ - "arrayvec 0.5.2", - "ash", - "byteorder", - "core-graphics-types", - "gfx-hal", - "inplace_it", - "lazy_static", - "log", - "objc", - "raw-window-handle 0.3.3", - "smallvec", - "winapi", -] - -[[package]] -name = "gfx-descriptor" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd8c7afcd000f279d541a490e27117e61037537279b9342279abf4938fe60c6b" -dependencies = [ - "arrayvec 0.5.2", - "fxhash", - "gfx-hal", - "log", -] - -[[package]] -name = "gfx-hal" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18d0754f5b7a43915fd7466883b2d1bb0800d7cc4609178d0b27bf143b9e5123" -dependencies = [ - "bitflags 1.3.2", - "raw-window-handle 0.3.3", -] - -[[package]] -name = "gfx-memory" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dccdda5d2b39412f4ca2cb15c70b5a82783a86b0606f5e985342754c8ed88f05" -dependencies = [ - "bit-set", - "fxhash", - "gfx-hal", - "log", - "slab", -] - [[package]] name = "gfx_traits" version = "0.0.1" @@ -2408,6 +2278,45 @@ dependencies = [ "pkg-config", ] +[[package]] +name = "gpu-alloc" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22beaafc29b38204457ea030f6fb7a84c9e4dd1b86e311ba0542533453d87f62" +dependencies = [ + "bitflags 1.3.2", + "gpu-alloc-types", +] + +[[package]] +name = "gpu-alloc-types" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54804d0d6bc9d7f26db4eaec1ad10def69b599315f487d32c334a80d1efe67a5" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "gpu-descriptor" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b0c02e1ba0bdb14e965058ca34e09c020f8e507a760df1121728e0aef68d57a" +dependencies = [ + "bitflags 1.3.2", + "gpu-descriptor-types", + "hashbrown", +] + +[[package]] +name = "gpu-descriptor-types" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "363e3677e55ad168fef68cf9de3a4a310b53124c5e784c53a1d70e92d23f2126" +dependencies = [ + "bitflags 1.3.2", +] + [[package]] name = "gst-plugin-version-helper" version = "0.2.0" @@ -2756,9 +2665,12 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.9.1" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash 0.7.6", +] [[package]] name = "headers" @@ -2787,12 +2699,9 @@ dependencies = [ [[package]] name = "heck" -version = "0.3.3" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" -dependencies = [ - "unicode-segmentation", -] +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" [[package]] name = "hermit-abi" @@ -2809,6 +2718,12 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77" +[[package]] +name = "hexf-parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df" + [[package]] name = "histogram" version = "0.6.9" @@ -2987,20 +2902,15 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.6.1" +version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb1fa934250de4de8aef298d81c729a7d33d8c239daa3a7575e6b92bfc7313b" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg", "hashbrown", + "serde", ] -[[package]] -name = "inplace_it" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67f0347836f3f6362c1e7efdadde2b1c4b4556d211310b70631bae7eb692070b" - [[package]] name = "instant" version = "0.1.12" @@ -3020,7 +2930,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1abeb7a0dd0f8181267ff8adc397075586500b81b28a73e8a0208b00fc170fb3" dependencies = [ "libc", - "windows-sys", + "windows-sys 0.45.0", ] [[package]] @@ -3162,6 +3072,16 @@ dependencies = [ "unicode-segmentation", ] +[[package]] +name = "khronos-egl" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c2352bd1d0bceb871cb9d40f24360c8133c11d7486b68b5381c1dd1a32015e3" +dependencies = [ + "libc", + "pkg-config", +] + [[package]] name = "khronos_api" version = "3.1.0" @@ -3425,15 +3345,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "libloading" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c4f51b790f5bdb65acb4cc94bb81d7b2ee60348a5431ac1467d390b017600b0" -dependencies = [ - "winapi", -] - [[package]] name = "libloading" version = "0.7.0" @@ -3444,6 +3355,16 @@ dependencies = [ "winapi", ] +[[package]] +name = "libloading" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d580318f95776505201b28cf98eb1fa5e4be3b689633ba6a3e6cd880ff22d8cb" +dependencies = [ + "cfg-if 1.0.0", + "windows-sys 0.48.0", +] + [[package]] name = "libm" version = "0.2.6" @@ -3699,20 +3620,6 @@ dependencies = [ "autocfg", ] -[[package]] -name = "metal" -version = "0.20.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c4e8a431536529327e28c9ba6992f2cb0c15d4222f0602a16e6d7695ff3bccf" -dependencies = [ - "bitflags 1.3.2", - "block", - "cocoa-foundation", - "foreign-types", - "log", - "objc", -] - [[package]] name = "metal" version = "0.24.0" @@ -3833,7 +3740,7 @@ dependencies = [ "libc", "log", "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys", + "windows-sys 0.45.0", ] [[package]] @@ -3940,16 +3847,23 @@ checksum = "0419348c027fa7be448d2ae7ea0e4e04c2334c31dc4e74ab29f00a2a7ca69204" [[package]] name = "naga" -version = "0.2.0" -source = "git+https://github.com/gfx-rs/naga?rev=b278e10ea7c144b2387585c4e81c1d86db8e2def#b278e10ea7c144b2387585c4e81c1d86db8e2def" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbcc2e0513220fd2b598e6068608d4462db20322c0e77e47f6f488dfcfc279cb" dependencies = [ + "bit-set", "bitflags 1.3.2", - "fxhash", + "codespan-reporting", + "hexf-parse", + "indexmap", "log", "num-traits", - "petgraph 0.5.1", - "spirv_headers", + "rustc-hash", + "serde", + "spirv", + "termcolor", "thiserror", + "unicode-xid", ] [[package]] @@ -3971,7 +3885,7 @@ dependencies = [ "jni-sys", "ndk-sys", "num_enum", - "raw-window-handle 0.5.0", + "raw-window-handle", "thiserror", ] @@ -4391,6 +4305,12 @@ version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a86ed3f5f244b372d6b1a00b72ef7f8876d0bc6a78a4c9985c53614041512063" +[[package]] +name = "os_str_bytes" +version = "6.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d5d9eb14b174ee9aa2ef96dc2b94637a2d4b6e7cb873c7e171f0c20c6cf3eac" + [[package]] name = "owned_ttf_parser" version = "0.18.1" @@ -4454,7 +4374,7 @@ dependencies = [ "libc", "redox_syscall 0.2.13", "smallvec", - "windows-sys", + "windows-sys 0.45.0", ] [[package]] @@ -4542,20 +4462,10 @@ version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c3659d1ee90221741f65dd128d9998311b0e40c5d3c23a62445938214abce4f" dependencies = [ - "fixedbitset 0.1.9", + "fixedbitset", "ordermap", ] -[[package]] -name = "petgraph" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "467d164a6de56270bd7c4d070df81d07beace25012d5103ced4e9ff08d6afdb7" -dependencies = [ - "fixedbitset 0.2.0", - "indexmap", -] - [[package]] name = "phf" version = "0.10.1" @@ -4782,6 +4692,12 @@ dependencies = [ "time 0.1.45", ] +[[package]] +name = "profiling" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46b2164ebdb1dfeec5e337be164292351e11daf63a05174c6776b2f47460f0c9" + [[package]] name = "qoi" version = "0.4.1" @@ -4922,15 +4838,6 @@ dependencies = [ "typed-arena", ] -[[package]] -name = "raw-window-handle" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a441a7a6c80ad6473bd4b74ec1c9a4c951794285bf941c2126f607c72e48211" -dependencies = [ - "libc", -] - [[package]] name = "raw-window-handle" version = "0.5.0" @@ -5048,9 +4955,9 @@ dependencies = [ [[package]] name = "ron" -version = "0.6.6" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86018df177b1beef6c7c8ef949969c4f7cb9a9344181b92486b23c79995bdaa4" +checksum = "300a51053b1cb55c80b7a9fde4120726ddf25ca241a1cbb926626f62fb136bff" dependencies = [ "base64 0.13.0", "bitflags 1.3.2", @@ -5089,7 +4996,7 @@ dependencies = [ "io-lifetimes", "libc", "linux-raw-sys", - "windows-sys", + "windows-sys 0.45.0", ] [[package]] @@ -5492,7 +5399,7 @@ dependencies = [ "libc", "libservo", "log", - "raw-window-handle 0.5.0", + "raw-window-handle", "servo-media", "shellwords", "sig", @@ -5564,7 +5471,7 @@ dependencies = [ "log", "num-complex", "num-traits", - "petgraph 0.4.13", + "petgraph", "serde", "serde_derive", "servo-media-player", @@ -6044,21 +5951,10 @@ dependencies = [ ] [[package]] -name = "spirv_cross" -version = "0.22.1" +name = "spirv" +version = "0.2.0+1.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea964c42ce40326fe96111918abe71fa45076da1ea85769f3f1ab1cda9a1d496" -dependencies = [ - "cc", - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "spirv_headers" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f5b132530b1ac069df335577e3581765995cba5a13995cdbbdbc8fb057c532c" +checksum = "246bfa38fe3db3f1dfc8ca5a2cdeb7348c78be2112740cc0ec8ef18b6d94f830" dependencies = [ "bitflags 1.3.2", "num-traits", @@ -6083,15 +5979,6 @@ dependencies = [ "embedder_traits", ] -[[package]] -name = "storage-map" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "418bb14643aa55a7841d5303f72cf512cfb323b8cc221d51580500a1ca75206c" -dependencies = [ - "lock_api", -] - [[package]] name = "str-buf" version = "1.0.6" @@ -6132,9 +6019,9 @@ dependencies = [ [[package]] name = "strsim" -version = "0.8.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "style" @@ -6268,9 +6155,9 @@ dependencies = [ "libc", "log", "mach", - "metal 0.24.0", + "metal", "objc", - "raw-window-handle 0.5.0", + "raw-window-handle", "servo-display-link", "sparkle", "wayland-sys 0.30.1", @@ -6344,7 +6231,7 @@ dependencies = [ "fastrand", "redox_syscall 0.3.4", "rustix", - "windows-sys", + "windows-sys 0.45.0", ] [[package]] @@ -6370,12 +6257,9 @@ dependencies = [ [[package]] name = "textwrap" -version = "0.11.0" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060" -dependencies = [ - "unicode-width", -] +checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d" [[package]] name = "thiserror" @@ -6397,12 +6281,6 @@ dependencies = [ "syn", ] -[[package]] -name = "thunderdome" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7572415bd688d401c52f6e36f4c8e805b9ae1622619303b9fa835d531db0acae" - [[package]] name = "tiff" version = "0.8.1" @@ -6548,7 +6426,7 @@ dependencies = [ "pin-project-lite", "socket2", "tokio-macros", - "windows-sys", + "windows-sys 0.45.0", ] [[package]] @@ -6787,9 +6665,9 @@ checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" [[package]] name = "unicode-xid" -version = "0.2.2" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" +checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" [[package]] name = "untrusted" @@ -7310,39 +7188,76 @@ checksum = "d8b77fdfd5a253be4ab714e4ffa3c49caf146b4de743e97510c0656cf90f1e8e" [[package]] name = "wgpu-core" -version = "0.6.0" -source = "git+https://github.com/gfx-rs/wgpu?rev=e72724a6e393503c73f37e86aa9317a5c62e32b8#e72724a6e393503c73f37e86aa9317a5c62e32b8" +version = "0.16.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f478237b4bf0d5b70a39898a66fa67ca3a007d79f2520485b8b0c3dfc46f8c2" dependencies = [ - "arrayvec 0.5.2", - "bitflags 1.3.2", - "cfg_aliases", - "copyless", - "fxhash", - "gfx-backend-dx11", - "gfx-backend-dx12", - "gfx-backend-empty", - "gfx-backend-metal", - "gfx-backend-vulkan", - "gfx-descriptor", - "gfx-hal", - "gfx-memory", + "arrayvec 0.7.1", + "bit-vec", + "bitflags 2.3.1", + "codespan-reporting", + "log", "naga", - "parking_lot 0.11.2", - "ron 0.6.6", + "parking_lot 0.12.0", + "profiling", + "ron 0.8.0", + "rustc-hash", "serde", "smallvec", "thiserror", - "tracing", + "web-sys", + "wgpu-hal", "wgpu-types", ] [[package]] -name = "wgpu-types" -version = "0.6.0" -source = "git+https://github.com/gfx-rs/wgpu?rev=e72724a6e393503c73f37e86aa9317a5c62e32b8#e72724a6e393503c73f37e86aa9317a5c62e32b8" +name = "wgpu-hal" +version = "0.16.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ecb3258078e936deee14fd4e0febe1cfe9bbb5ffef165cb60218d2ee5eb4448" dependencies = [ - "bitflags 1.3.2", + "android_system_properties", + "arrayvec 0.7.1", + "ash", + "bit-set", + "bitflags 2.3.1", + "block", + "core-graphics-types", + "d3d12", + "foreign-types", + "gpu-alloc", + "gpu-descriptor", + "js-sys", + "khronos-egl", + "libc", + "libloading 0.8.0", + "log", + "metal", + "naga", + "objc", + "parking_lot 0.12.0", + "profiling", + "range-alloc", + "raw-window-handle", + "rustc-hash", + "smallvec", + "thiserror", + "wasm-bindgen", + "web-sys", + "wgpu-types", + "winapi", +] + +[[package]] +name = "wgpu-types" +version = "0.16.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0c153280bb108c2979eb5c7391cb18c56642dd3c072e55f52065e13e2a1252a" +dependencies = [ + "bitflags 2.3.1", + "js-sys", "serde", + "web-sys", ] [[package]] @@ -7402,7 +7317,16 @@ version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" dependencies = [ - "windows-targets", + "windows-targets 0.42.1", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.1", ] [[package]] @@ -7411,13 +7335,28 @@ version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7" dependencies = [ - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", + "windows_aarch64_gnullvm 0.42.1", + "windows_aarch64_msvc 0.42.1", + "windows_i686_gnu 0.42.1", + "windows_i686_msvc 0.42.1", + "windows_x86_64_gnu 0.42.1", + "windows_x86_64_gnullvm 0.42.1", + "windows_x86_64_msvc 0.42.1", +] + +[[package]] +name = "windows-targets" +version = "0.48.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f" +dependencies = [ + "windows_aarch64_gnullvm 0.48.0", + "windows_aarch64_msvc 0.48.0", + "windows_i686_gnu 0.48.0", + "windows_i686_msvc 0.48.0", + "windows_x86_64_gnu 0.48.0", + "windows_x86_64_gnullvm 0.48.0", + "windows_x86_64_msvc 0.48.0", ] [[package]] @@ -7426,42 +7365,84 @@ version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608" +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" + [[package]] name = "windows_aarch64_msvc" version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7" +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" + [[package]] name = "windows_i686_gnu" version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640" +[[package]] +name = "windows_i686_gnu" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" + [[package]] name = "windows_i686_msvc" version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605" +[[package]] +name = "windows_i686_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" + [[package]] name = "windows_x86_64_gnu" version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45" +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" + [[package]] name = "windows_x86_64_gnullvm" version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" + [[package]] name = "windows_x86_64_msvc" version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd" +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" + [[package]] name = "winit" version = "0.28.3" @@ -7483,7 +7464,7 @@ dependencies = [ "once_cell", "orbclient", "percent-encoding", - "raw-window-handle 0.5.0", + "raw-window-handle", "redox_syscall 0.3.4", "sctk-adwaita", "smithay-client-toolkit", @@ -7493,7 +7474,7 @@ dependencies = [ "wayland-protocols", "wayland-scanner", "web-sys", - "windows-sys", + "windows-sys 0.45.0", "x11-dl", ] diff --git a/components/script/dom/bindings/codegen/Bindings.conf b/components/script/dom/bindings/codegen/Bindings.conf index 6c6e0ed6618..d02fa93c8de 100644 --- a/components/script/dom/bindings/codegen/Bindings.conf +++ b/components/script/dom/bindings/codegen/Bindings.conf @@ -153,7 +153,7 @@ DOMInterfaces = { }, 'GPUAdapter': { - 'inRealms': ['RequestDevice'], + 'inRealms': ['RequestDevice', 'RequestAdapterInfo'], }, 'GPUBuffer': { @@ -161,7 +161,7 @@ DOMInterfaces = { }, 'GPUDevice': { - 'inRealms': ['PopErrorScope', 'Lost'], + 'inRealms': ['PopErrorScope', 'GetLost'], } } diff --git a/components/script/dom/gpu.rs b/components/script/dom/gpu.rs index 8fe003f2fcd..11f98909abe 100644 --- a/components/script/dom/gpu.rs +++ b/components/script/dom/gpu.rs @@ -23,6 +23,8 @@ use std::rc::Rc; use webgpu::wgt::PowerPreference; use webgpu::{wgpu, WebGPUResponse, WebGPUResponseResult}; +use super::bindings::codegen::Bindings::GPUTextureBinding::GPUTextureFormat; + #[dom_struct] pub struct GPU { reflector_: Reflector, @@ -105,7 +107,7 @@ impl GPUMethods for GPU { let power_preference = match options.powerPreference { Some(GPUPowerPreference::Low_power) => PowerPreference::LowPower, Some(GPUPowerPreference::High_performance) => PowerPreference::HighPerformance, - None => PowerPreference::Default, + None => PowerPreference::default(), }; let ids = global.wgpu_id_hub().lock().create_adapter_ids(); @@ -116,6 +118,7 @@ impl GPUMethods for GPU { wgpu::instance::RequestAdapterOptions { power_preference, compatible_surface: None, + force_fallback_adapter: options.forceFallbackAdapter, }, ids, )) @@ -125,21 +128,34 @@ impl GPUMethods for GPU { } promise } + + // https://gpuweb.github.io/gpuweb/#dom-gpu-getpreferredcanvasformat + fn GetPreferredCanvasFormat(&self) -> GPUTextureFormat { + // TODO: real implementation + GPUTextureFormat::Rgba8unorm + } } impl AsyncWGPUListener for GPU { fn handle_response(&self, response: WebGPUResponseResult, promise: &Rc) { match response { Ok(WebGPUResponse::RequestAdapter { - adapter_name, + adapter_info, adapter_id, + limits, channel, }) => { let adapter = GPUAdapter::new( &self.global(), channel, - DOMString::from(format!("{} ({:?})", adapter_name, adapter_id.0.backend())), + DOMString::from(format!( + "{} ({:?})", + adapter_info.name, + adapter_id.0.backend() + )), Heap::default(), + limits, + adapter_info, adapter_id, ); promise.resolve_native(&adapter); diff --git a/components/script/dom/gpuadapter.rs b/components/script/dom/gpuadapter.rs index e87f0589c51..db5be259375 100644 --- a/components/script/dom/gpuadapter.rs +++ b/components/script/dom/gpuadapter.rs @@ -3,11 +3,11 @@ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ use crate::dom::bindings::codegen::Bindings::GPUAdapterBinding::{ - GPUAdapterMethods, GPUDeviceDescriptor, GPUExtensionName, GPULimits, + GPUAdapterMethods, GPUDeviceDescriptor, GPUFeatureName, }; use crate::dom::bindings::error::Error; use crate::dom::bindings::reflector::{reflect_dom_object, DomObject, Reflector}; -use crate::dom::bindings::root::DomRoot; +use crate::dom::bindings::root::{Dom, DomRoot}; use crate::dom::bindings::str::DOMString; use crate::dom::globalscope::GlobalScope; use crate::dom::gpu::response_async; @@ -15,13 +15,14 @@ use crate::dom::gpu::AsyncWGPUListener; use crate::dom::gpudevice::GPUDevice; use crate::dom::promise::Promise; use crate::realms::InRealm; -use crate::script_runtime::JSContext as SafeJSContext; use dom_struct::dom_struct; use js::jsapi::{Heap, JSObject}; -use std::ptr::NonNull; +use std::convert::TryFrom; use std::rc::Rc; use webgpu::{wgt, WebGPU, WebGPUAdapter, WebGPURequest, WebGPUResponse, WebGPUResponseResult}; +use super::types::{GPUAdapterInfo, GPUSupportedLimits}; + #[dom_struct] pub struct GPUAdapter { reflector_: Reflector, @@ -31,6 +32,8 @@ pub struct GPUAdapter { name: DOMString, #[ignore_malloc_size_of = "mozjs"] extensions: Heap<*mut JSObject>, + limits: Dom, + info: Dom, #[no_trace] adapter: WebGPUAdapter, } @@ -40,6 +43,8 @@ impl GPUAdapter { channel: WebGPU, name: DOMString, extensions: Heap<*mut JSObject>, + limits: &GPUSupportedLimits, + info: &GPUAdapterInfo, adapter: WebGPUAdapter, ) -> Self { Self { @@ -47,6 +52,8 @@ impl GPUAdapter { channel, name, extensions, + limits: Dom::from_ref(limits), + info: Dom::from_ref(info), adapter, } } @@ -56,11 +63,15 @@ impl GPUAdapter { channel: WebGPU, name: DOMString, extensions: Heap<*mut JSObject>, + limits: wgt::Limits, + info: wgt::AdapterInfo, adapter: WebGPUAdapter, ) -> DomRoot { + let limits = GPUSupportedLimits::new(global, limits); + let info = GPUAdapterInfo::new(global, info); reflect_dom_object( Box::new(GPUAdapter::new_inherited( - channel, name, extensions, adapter, + channel, name, extensions, &limits, &info, adapter, )), global, ) @@ -68,57 +79,116 @@ impl GPUAdapter { } impl GPUAdapterMethods for GPUAdapter { - // https://gpuweb.github.io/gpuweb/#dom-gpuadapter-name - fn Name(&self) -> DOMString { - self.name.clone() - } - - // https://gpuweb.github.io/gpuweb/#dom-gpuadapter-extensions - fn Extensions(&self, _cx: SafeJSContext) -> NonNull { - NonNull::new(self.extensions.get()).unwrap() - } - /// https://gpuweb.github.io/gpuweb/#dom-gpuadapter-requestdevice fn RequestDevice(&self, descriptor: &GPUDeviceDescriptor, comp: InRealm) -> Rc { + // Step 2 let promise = Promise::new_in_current_realm(comp); let sender = response_async(&promise, self); let mut features = wgt::Features::empty(); - for &ext in descriptor.extensions.iter() { - if ext == GPUExtensionName::Depth_clamping { - features.insert(wgt::Features::DEPTH_CLAMPING); - } else if ext == GPUExtensionName::Texture_compression_bc { - features.insert(wgt::Features::TEXTURE_COMPRESSION_BC) + for &ext in descriptor.requiredFeatures.iter() { + match ext { + GPUFeatureName::Depth_clip_control => { + features.insert(wgt::Features::DEPTH_CLIP_CONTROL) + }, + GPUFeatureName::Depth24unorm_stencil8 => { + promise.reject_error(Error::Type(String::from( + "depth24unorm_stencil8 is not supported by wgpu", + ))); + return promise; + }, + GPUFeatureName::Depth32float_stencil8 => { + features.insert(wgt::Features::DEPTH32FLOAT_STENCIL8) + }, + GPUFeatureName::Pipeline_statistics_query => { + features.insert(wgt::Features::PIPELINE_STATISTICS_QUERY) + }, + GPUFeatureName::Texture_compression_bc => { + features.insert(wgt::Features::TEXTURE_COMPRESSION_BC) + }, + GPUFeatureName::Texture_compression_etc2 => { + features.insert(wgt::Features::TEXTURE_COMPRESSION_ETC2) + }, + GPUFeatureName::Texture_compression_astc => { + features.insert(wgt::Features::TEXTURE_COMPRESSION_ASTC) + }, + GPUFeatureName::Timestamp_query => features.insert(wgt::Features::TIMESTAMP_QUERY), + GPUFeatureName::Indirect_first_instance => { + features.insert(wgt::Features::INDIRECT_FIRST_INSTANCE) + }, } } - let desc = wgt::DeviceDescriptor { + let mut desc = wgt::DeviceDescriptor { features, - limits: wgt::Limits { - max_bind_groups: descriptor.limits.maxBindGroups, - max_dynamic_uniform_buffers_per_pipeline_layout: descriptor - .limits - .maxDynamicUniformBuffersPerPipelineLayout, - max_dynamic_storage_buffers_per_pipeline_layout: descriptor - .limits - .maxDynamicStorageBuffersPerPipelineLayout, - max_sampled_textures_per_shader_stage: descriptor - .limits - .maxSampledTexturesPerShaderStage, - max_samplers_per_shader_stage: descriptor.limits.maxSamplersPerShaderStage, - max_storage_buffers_per_shader_stage: descriptor - .limits - .maxStorageBuffersPerShaderStage, - max_storage_textures_per_shader_stage: descriptor - .limits - .maxStorageTexturesPerShaderStage, - max_uniform_buffers_per_shader_stage: descriptor - .limits - .maxUniformBuffersPerShaderStage, - max_uniform_buffer_binding_size: descriptor.limits.maxUniformBufferBindingSize, - ..Default::default() - }, - shader_validation: true, + limits: wgt::Limits::default(), + label: None, }; + if let Some(lim) = &descriptor.requiredLimits { + for (k, v) in (*lim).iter() { + let v = u32::try_from(*v).unwrap_or(u32::MAX); + match k.as_ref() { + "maxTextureDimension1D" => desc.limits.max_texture_dimension_1d = v, + "maxTextureDimension2D" => desc.limits.max_texture_dimension_2d = v, + "maxTextureDimension3D" => desc.limits.max_texture_dimension_3d = v, + "maxTextureArrayLayers" => desc.limits.max_texture_array_layers = v, + "maxBindGroups" => desc.limits.max_bind_groups = v, + "maxDynamicUniformBuffersPerPipelineLayout" => { + desc.limits.max_dynamic_uniform_buffers_per_pipeline_layout = v + }, + "maxDynamicStorageBuffersPerPipelineLayout" => { + desc.limits.max_dynamic_storage_buffers_per_pipeline_layout = v + }, + "maxSampledTexturesPerShaderStage" => { + desc.limits.max_sampled_textures_per_shader_stage = v + }, + "maxSamplersPerShaderStage" => desc.limits.max_samplers_per_shader_stage = v, + "maxStorageBuffersPerShaderStage" => { + desc.limits.max_storage_buffers_per_shader_stage = v + }, + "maxStorageTexturesPerShaderStage" => { + desc.limits.max_storage_textures_per_shader_stage = v + }, + "maxUniformBuffersPerShaderStage" => { + desc.limits.max_uniform_buffers_per_shader_stage = v + }, + "maxUniformBufferBindingSize" => { + desc.limits.max_uniform_buffer_binding_size = v + }, + "maxStorageBufferBindingSize" => { + desc.limits.max_storage_buffer_binding_size = v + }, + "minUniformBufferOffsetAlignment" => { + desc.limits.min_uniform_buffer_offset_alignment = v + }, + "minStorageBufferOffsetAlignment" => { + desc.limits.min_storage_buffer_offset_alignment = v + }, + "maxVertexBuffers" => desc.limits.max_vertex_buffers = v, + "maxVertexAttributes" => desc.limits.max_vertex_attributes = v, + "maxVertexBufferArrayStride" => desc.limits.max_vertex_buffer_array_stride = v, + "maxInterStageShaderComponents" => { + desc.limits.max_inter_stage_shader_components = v + }, + "maxComputeWorkgroupStorageSize" => { + desc.limits.max_compute_workgroup_storage_size = v + }, + "maxComputeInvocationsPerWorkgroup" => { + desc.limits.max_compute_invocations_per_workgroup = v + }, + "maxComputeWorkgroupSizeX" => desc.limits.max_compute_workgroup_size_x = v, + "maxComputeWorkgroupSizeY" => desc.limits.max_compute_workgroup_size_y = v, + "maxComputeWorkgroupSizeZ" => desc.limits.max_compute_workgroup_size_z = v, + "maxComputeWorkgroupsPerDimension" => { + desc.limits.max_compute_workgroups_per_dimension = v + }, + _ => { + error!("Unknown required limit: {k} with value {v}"); + promise.reject_error(Error::Operation); + return promise; + }, + } + } + } let id = self .global() .wgpu_id_hub() @@ -136,15 +206,40 @@ impl GPUAdapterMethods for GPUAdapter { descriptor: desc, device_id: id, pipeline_id, - label: descriptor.parent.label.as_ref().map(|s| s.to_string()), }, )) .is_err() { promise.reject_error(Error::Operation); } + // Step 5 promise } + + /// https://gpuweb.github.io/gpuweb/#dom-gpuadapter-isfallbackadapter + fn IsFallbackAdapter(&self) -> bool { + //TODO + false + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpuadapter-requestadapterinfo + fn RequestAdapterInfo(&self, unmask_hints: Vec, comp: InRealm) -> Rc { + // XXX: Adapter info should be generated here ... + // Step 1 + let promise = Promise::new_in_current_realm(comp); + // Step 4 + if !unmask_hints.is_empty() { + todo!("unmaskHints on RequestAdapterInfo"); + } + promise.resolve_native(&*self.info); + // Step 5 + promise + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpudevice-limits + fn Limits(&self) -> DomRoot { + DomRoot::from_ref(&self.limits) + } } impl AsyncWGPUListener for GPUAdapter { @@ -154,40 +249,16 @@ impl AsyncWGPUListener for GPUAdapter { device_id, queue_id, descriptor, - label, }) => { - let limits = GPULimits { - maxBindGroups: descriptor.limits.max_bind_groups, - maxDynamicStorageBuffersPerPipelineLayout: descriptor - .limits - .max_dynamic_storage_buffers_per_pipeline_layout, - maxDynamicUniformBuffersPerPipelineLayout: descriptor - .limits - .max_dynamic_uniform_buffers_per_pipeline_layout, - maxSampledTexturesPerShaderStage: descriptor - .limits - .max_sampled_textures_per_shader_stage, - maxSamplersPerShaderStage: descriptor.limits.max_samplers_per_shader_stage, - maxStorageBuffersPerShaderStage: descriptor - .limits - .max_storage_buffers_per_shader_stage, - maxStorageTexturesPerShaderStage: descriptor - .limits - .max_storage_textures_per_shader_stage, - maxUniformBufferBindingSize: descriptor.limits.max_uniform_buffer_binding_size, - maxUniformBuffersPerShaderStage: descriptor - .limits - .max_uniform_buffers_per_shader_stage, - }; let device = GPUDevice::new( &self.global(), self.channel.clone(), &self, Heap::default(), - limits, + descriptor.limits, device_id, queue_id, - label, + descriptor.label.unwrap_or_default(), ); self.global().add_gpu_device(&device); promise.resolve_native(&device); diff --git a/components/script/dom/gpuadapterinfo.rs b/components/script/dom/gpuadapterinfo.rs new file mode 100644 index 00000000000..b3fe29b10fa --- /dev/null +++ b/components/script/dom/gpuadapterinfo.rs @@ -0,0 +1,56 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +use super::bindings::codegen::Bindings::GPUAdapterInfoBinding::GPUAdapterInfoMethods; +use super::bindings::reflector::reflect_dom_object; +use super::bindings::root::DomRoot; +use crate::dom::bindings::reflector::Reflector; +use crate::dom::globalscope::GlobalScope; +use crate::test::DOMString; +use dom_struct::dom_struct; +use webgpu::wgt::AdapterInfo; + +#[dom_struct] +pub struct GPUAdapterInfo { + reflector_: Reflector, + #[ignore_malloc_size_of = "defined in wgpu-types"] + #[no_trace] + info: AdapterInfo, +} + +impl GPUAdapterInfo { + fn new_inherited(info: AdapterInfo) -> Self { + Self { + reflector_: Reflector::new(), + info, + } + } + + pub fn new(global: &GlobalScope, info: AdapterInfo) -> DomRoot { + reflect_dom_object(Box::new(Self::new_inherited(info)), global) + } +} + +// TODO: wgpu does not expose right fields right now +impl GPUAdapterInfoMethods for GPUAdapterInfo { + /// https://gpuweb.github.io/gpuweb/#dom-gpuadapterinfo-vendor + fn Vendor(&self) -> DOMString { + DOMString::new() + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpuadapterinfo-architecture + fn Architecture(&self) -> DOMString { + DOMString::new() + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpuadapterinfo-device + fn Device(&self) -> DOMString { + DOMString::new() + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpuadapterinfo-description + fn Description(&self) -> DOMString { + DOMString::from_string(self.info.driver_info.clone()) + } +} diff --git a/components/script/dom/gpubindgroup.rs b/components/script/dom/gpubindgroup.rs index d25cf7fa5bd..41f20999175 100644 --- a/components/script/dom/gpubindgroup.rs +++ b/components/script/dom/gpubindgroup.rs @@ -15,7 +15,7 @@ use webgpu::{WebGPUBindGroup, WebGPUDevice}; #[dom_struct] pub struct GPUBindGroup { reflector_: Reflector, - label: DomRefCell>, + label: DomRefCell, #[no_trace] bind_group: WebGPUBindGroup, #[no_trace] @@ -28,7 +28,7 @@ impl GPUBindGroup { bind_group: WebGPUBindGroup, device: WebGPUDevice, layout: &GPUBindGroupLayout, - label: Option, + label: USVString, ) -> Self { Self { reflector_: Reflector::new(), @@ -44,7 +44,7 @@ impl GPUBindGroup { bind_group: WebGPUBindGroup, device: WebGPUDevice, layout: &GPUBindGroupLayout, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPUBindGroup::new_inherited( @@ -63,12 +63,12 @@ impl GPUBindGroup { impl GPUBindGroupMethods for GPUBindGroup { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } } diff --git a/components/script/dom/gpubindgrouplayout.rs b/components/script/dom/gpubindgrouplayout.rs index 87442c1d744..89862358211 100644 --- a/components/script/dom/gpubindgrouplayout.rs +++ b/components/script/dom/gpubindgrouplayout.rs @@ -14,13 +14,13 @@ use webgpu::WebGPUBindGroupLayout; #[dom_struct] pub struct GPUBindGroupLayout { reflector_: Reflector, - label: DomRefCell>, + label: DomRefCell, #[no_trace] bind_group_layout: WebGPUBindGroupLayout, } impl GPUBindGroupLayout { - fn new_inherited(bind_group_layout: WebGPUBindGroupLayout, label: Option) -> Self { + fn new_inherited(bind_group_layout: WebGPUBindGroupLayout, label: USVString) -> Self { Self { reflector_: Reflector::new(), label: DomRefCell::new(label), @@ -31,7 +31,7 @@ impl GPUBindGroupLayout { pub fn new( global: &GlobalScope, bind_group_layout: WebGPUBindGroupLayout, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPUBindGroupLayout::new_inherited(bind_group_layout, label)), @@ -48,12 +48,12 @@ impl GPUBindGroupLayout { impl GPUBindGroupLayoutMethods for GPUBindGroupLayout { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } } diff --git a/components/script/dom/gpubuffer.rs b/components/script/dom/gpubuffer.rs index 0d528812a96..b1789405fa3 100644 --- a/components/script/dom/gpubuffer.rs +++ b/components/script/dom/gpubuffer.rs @@ -61,7 +61,7 @@ pub struct GPUBuffer { #[ignore_malloc_size_of = "defined in webgpu"] #[no_trace] channel: WebGPU, - label: DomRefCell>, + label: DomRefCell, state: Cell, #[no_trace] buffer: WebGPUBuffer, @@ -80,7 +80,7 @@ impl GPUBuffer { state: GPUBufferState, size: GPUSize64, map_info: DomRefCell>, - label: Option, + label: USVString, ) -> Self { Self { reflector_: Reflector::new(), @@ -104,7 +104,7 @@ impl GPUBuffer { state: GPUBufferState, size: GPUSize64, map_info: DomRefCell>, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPUBuffer::new_inherited( @@ -127,20 +127,22 @@ impl GPUBuffer { impl Drop for GPUBuffer { fn drop(&mut self) { - self.Destroy() + if let Err(e) = self.Destroy() { + error!("GPUBuffer destruction failed with {e:?}!"); // TODO: should we allow panic here? + }; } } impl GPUBufferMethods for GPUBuffer { #[allow(unsafe_code)] /// https://gpuweb.github.io/gpuweb/#dom-gpubuffer-unmap - fn Unmap(&self) { + fn Unmap(&self) -> Fallible<()> { let cx = GlobalScope::get_cx(); // Step 1 match self.state.get() { GPUBufferState::Unmapped | GPUBufferState::Destroyed => { // TODO: Record validation error on the current scope - return; + return Ok(()); }, // Step 3 GPUBufferState::Mapped | GPUBufferState::MappedAtCreation => { @@ -176,16 +178,17 @@ impl GPUBufferMethods for GPUBuffer { // Step 4 self.state.set(GPUBufferState::Unmapped); *self.map_info.borrow_mut() = None; + Ok(()) } /// https://gpuweb.github.io/gpuweb/#dom-gpubuffer-destroy - fn Destroy(&self) { + fn Destroy(&self) -> Fallible<()> { let state = self.state.get(); match state { GPUBufferState::Mapped | GPUBufferState::MappedAtCreation => { - self.Unmap(); + self.Unmap()?; }, - GPUBufferState::Destroyed => return, + GPUBufferState::Destroyed => return Ok(()), _ => {}, }; if let Err(e) = self @@ -199,6 +202,7 @@ impl GPUBufferMethods for GPUBuffer { ); }; self.state.set(GPUBufferState::Destroyed); + Ok(()) } #[allow(unsafe_code)] @@ -330,12 +334,12 @@ impl GPUBufferMethods for GPUBuffer { } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } } diff --git a/components/script/dom/gpucanvascontext.rs b/components/script/dom/gpucanvascontext.rs index e1fac360758..121a84f6473 100644 --- a/components/script/dom/gpucanvascontext.rs +++ b/components/script/dom/gpucanvascontext.rs @@ -2,20 +2,19 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -use crate::dom::bindings::cell::DomRefCell; use crate::dom::bindings::codegen::Bindings::GPUCanvasContextBinding::{ - GPUCanvasContextMethods, GPUSwapChainDescriptor, + GPUCanvasConfiguration, GPUCanvasContextMethods, }; use crate::dom::bindings::codegen::Bindings::GPUDeviceBinding::GPUDeviceBinding::GPUDeviceMethods; use crate::dom::bindings::codegen::Bindings::GPUObjectBaseBinding::GPUObjectDescriptorBase; use crate::dom::bindings::codegen::Bindings::GPUTextureBinding::{ GPUExtent3D, GPUExtent3DDict, GPUTextureDescriptor, GPUTextureDimension, GPUTextureFormat, }; +use crate::dom::bindings::codegen::Bindings::HTMLCanvasElementBinding::HTMLCanvasElementBinding::HTMLCanvasElementMethods; use crate::dom::bindings::inheritance::Castable; use crate::dom::bindings::reflector::{reflect_dom_object, DomObject, Reflector}; -use crate::dom::bindings::root::{Dom, DomRoot, LayoutDom}; +use crate::dom::bindings::root::{DomRoot, LayoutDom}; use crate::dom::globalscope::GlobalScope; -use crate::dom::gpuswapchain::GPUSwapChain; use crate::dom::htmlcanvaselement::{HTMLCanvasElement, LayoutCanvasRenderingContextHelpers}; use crate::dom::node::{document_from_node, Node, NodeDamage}; use arrayvec::ArrayVec; @@ -24,33 +23,98 @@ use euclid::default::Size2D; use ipc_channel::ipc; use script_layout_interface::HTMLCanvasDataSource; use std::cell::Cell; +use webgpu::WebGPUTexture; use webgpu::{wgpu::id, wgt, WebGPU, WebGPURequest, PRESENTATION_BUFFER_COUNT}; use webrender_api::{ units, ExternalImageData, ExternalImageId, ExternalImageType, ImageData, ImageDescriptor, ImageDescriptorFlags, ImageFormat, ImageKey, }; +use super::bindings::codegen::Bindings::GPUTextureUsageBinding::GPUTextureUsageConstants; +use super::bindings::codegen::UnionTypes::HTMLCanvasElementOrOffscreenCanvas; +use super::bindings::error::{Error, Fallible}; +use super::bindings::root::MutNullableDom; +use super::gputexture::GPUTexture; + #[derive(Clone, Copy, Debug, Eq, Hash, MallocSizeOf, Ord, PartialEq, PartialOrd)] pub struct WebGPUContextId(pub u64); +// TODO: make all this derivables available via new Bindings.conf option +impl Clone for GPUCanvasConfiguration { + fn clone(&self) -> Self { + Self { + alphaMode: self.alphaMode.clone(), + device: self.device.clone(), + format: self.format.clone(), + usage: self.usage.clone(), + viewFormats: self.viewFormats.clone(), + } + } +} + +impl Clone for HTMLCanvasElementOrOffscreenCanvas { + fn clone(&self) -> Self { + match self { + Self::HTMLCanvasElement(arg0) => Self::HTMLCanvasElement(arg0.clone()), + Self::OffscreenCanvas(arg0) => Self::OffscreenCanvas(arg0.clone()), + } + } +} + +impl malloc_size_of::MallocSizeOf for GPUTextureDescriptor { + fn size_of(&self, ops: &mut malloc_size_of::MallocSizeOfOps) -> usize { + match self { + Self { + parent, + dimension, + format, + mipLevelCount, + sampleCount, + size, + usage, + viewFormats, + } => { + parent.size_of(ops) + + dimension.size_of(ops) + + format.size_of(ops) + + mipLevelCount.size_of(ops) + + sampleCount.size_of(ops) + + size.size_of(ops) + + usage.size_of(ops) + + viewFormats.size_of(ops) + }, + } + } +} + +impl malloc_size_of::MallocSizeOf for HTMLCanvasElementOrOffscreenCanvas { + fn size_of(&self, ops: &mut malloc_size_of::MallocSizeOfOps) -> usize { + match self { + HTMLCanvasElementOrOffscreenCanvas::HTMLCanvasElement(canvas) => canvas.size_of(ops), + HTMLCanvasElementOrOffscreenCanvas::OffscreenCanvas(canvas) => canvas.size_of(ops), + } + } +} + #[dom_struct] pub struct GPUCanvasContext { reflector_: Reflector, #[ignore_malloc_size_of = "channels are hard"] #[no_trace] channel: WebGPU, - canvas: Dom, - #[no_trace] - size: Cell>, - swap_chain: DomRefCell>>, + /// https://gpuweb.github.io/gpuweb/#dom-gpucanvascontext-canvas + canvas: HTMLCanvasElementOrOffscreenCanvas, + // TODO: can we have wgpu surface that is hw accelerated inside wr ... #[ignore_malloc_size_of = "Defined in webrender"] #[no_trace] webrender_image: Cell>, context_id: WebGPUContextId, + /// https://gpuweb.github.io/gpuweb/#dom-gpucanvascontext-currenttexture-slot + texture: MutNullableDom, } impl GPUCanvasContext { - fn new_inherited(canvas: &HTMLCanvasElement, size: Size2D, channel: WebGPU) -> Self { + fn new_inherited(canvas: HTMLCanvasElementOrOffscreenCanvas, channel: WebGPU) -> Self { let (sender, receiver) = ipc::channel().unwrap(); if let Err(e) = channel.0.send((None, WebGPURequest::CreateContext(sender))) { warn!("Failed to send CreateContext ({:?})", e); @@ -59,22 +123,19 @@ impl GPUCanvasContext { Self { reflector_: Reflector::new(), channel, - canvas: Dom::from_ref(canvas), - size: Cell::new(size), - swap_chain: DomRefCell::new(None), + canvas, webrender_image: Cell::new(None), context_id: WebGPUContextId(external_id.0), + texture: MutNullableDom::default(), } } - pub fn new( - global: &GlobalScope, - canvas: &HTMLCanvasElement, - size: Size2D, - channel: WebGPU, - ) -> DomRoot { + pub fn new(global: &GlobalScope, canvas: &HTMLCanvasElement, channel: WebGPU) -> DomRoot { reflect_dom_object( - Box::new(GPUCanvasContext::new_inherited(canvas, size, channel)), + Box::new(GPUCanvasContext::new_inherited( + HTMLCanvasElementOrOffscreenCanvas::HTMLCanvasElement(DomRoot::from_ref(canvas)), + channel, + )), global, ) } @@ -91,7 +152,7 @@ impl GPUCanvasContext { } pub fn send_swap_chain_present(&self) { - let texture_id = self.swap_chain.borrow().as_ref().unwrap().texture_id().0; + let texture_id = self.texture_id().unwrap().0; let encoder_id = self .global() .wgpu_id_hub() @@ -116,13 +177,26 @@ impl GPUCanvasContext { self.context_id } - pub fn mark_as_dirty(&self) { - self.canvas - .upcast::() - .dirty(NodeDamage::OtherNodeDamage); + pub fn texture_id(&self) -> Option { + self.texture.get().map(|t| t.id()) + } - let document = document_from_node(&*self.canvas); - document.add_dirty_webgpu_canvas(self); + pub fn mark_as_dirty(&self) { + if let HTMLCanvasElementOrOffscreenCanvas::HTMLCanvasElement(canvas) = &self.canvas { + canvas.upcast::().dirty(NodeDamage::OtherNodeDamage); + let document = document_from_node(&**canvas); + document.add_dirty_webgpu_canvas(self); + } + // TODO(sagudev): offscreen canvas also dirty? + } + + fn size(&self) -> Size2D { + match &self.canvas { + HTMLCanvasElementOrOffscreenCanvas::HTMLCanvasElement(canvas) => { + Size2D::new(canvas.Width() as u64, canvas.Height() as u64) + }, + HTMLCanvasElementOrOffscreenCanvas::OffscreenCanvas(canvas) => canvas.get_size(), + } } } @@ -134,37 +208,49 @@ impl LayoutCanvasRenderingContextHelpers for LayoutDom<'_, GPUCanvasContext> { } impl GPUCanvasContextMethods for GPUCanvasContext { - /// https://gpuweb.github.io/gpuweb/#dom-gpucanvascontext-configureswapchain - fn ConfigureSwapChain(&self, descriptor: &GPUSwapChainDescriptor) -> DomRoot { - if let Some(chain) = &*self.swap_chain.borrow() { - chain.destroy(self.context_id.0, self.webrender_image.get().unwrap()); - self.webrender_image.set(None); - } - *self.swap_chain.borrow_mut() = None; + /// https://gpuweb.github.io/gpuweb/#dom-gpucanvascontext-canvas + fn Canvas(&self) -> HTMLCanvasElementOrOffscreenCanvas { + self.canvas.clone() + } - let mut buffer_ids = ArrayVec::::new(); - for _ in 0..PRESENTATION_BUFFER_COUNT { - buffer_ids.push( - self.global() - .wgpu_id_hub() - .lock() - .create_buffer_id(descriptor.device.id().0.backend()), - ); - } + /// https://gpuweb.github.io/gpuweb/#dom-gpucanvascontext-configure + fn Configure(&self, descriptor: &GPUCanvasConfiguration) { + // Step 1 is let + // Step 2 + // TODO: device features + let format = match descriptor.format { + GPUTextureFormat::Rgba8unorm | GPUTextureFormat::Rgba8unorm_srgb => ImageFormat::RGBA8, + GPUTextureFormat::Bgra8unorm | GPUTextureFormat::Bgra8unorm_srgb => ImageFormat::BGRA8, + _ => panic!("SwapChain format({:?}) not supported", descriptor.format), // TODO: Better handling + }; + // Step 3 + // TODO: device features + + // Step 4 + let size = self.size(); + let text_desc = GPUTextureDescriptor { + format: descriptor.format, + mipLevelCount: 1, + sampleCount: 1, + usage: descriptor.usage | GPUTextureUsageConstants::COPY_SRC, // TODO: specs + size: GPUExtent3D::GPUExtent3DDict(GPUExtent3DDict { + width: size.width as u32, + height: size.height as u32, + depthOrArrayLayers: 1, + }), + viewFormats: descriptor.viewFormats.clone(), + // other members to default + parent: GPUObjectDescriptorBase { label: None }, + dimension: GPUTextureDimension::_2d, + }; + + // Step 8 let image_desc = ImageDescriptor { - format: match descriptor.format { - GPUTextureFormat::Rgba8unorm => ImageFormat::RGBA8, - GPUTextureFormat::Bgra8unorm => ImageFormat::BGRA8, - _ => panic!("SwapChain format({:?}) not supported", descriptor.format), - }, - size: units::DeviceIntSize::new( - self.size.get().width as i32, - self.size.get().height as i32, - ), + format, + size: units::DeviceIntSize::new(size.width as i32, size.height as i32), stride: Some( - (((self.size.get().width * 4) | (wgt::COPY_BYTES_PER_ROW_ALIGNMENT - 1)) + 1) - as i32, + (((size.width as u32 * 4) | (wgt::COPY_BYTES_PER_ROW_ALIGNMENT - 1)) + 1) as i32, ), offset: 0, flags: ImageDescriptorFlags::from_bits(1).unwrap(), @@ -178,6 +264,16 @@ impl GPUCanvasContextMethods for GPUCanvasContext { let (sender, receiver) = ipc::channel().unwrap(); + let mut buffer_ids = ArrayVec::::new(); + for _ in 0..PRESENTATION_BUFFER_COUNT { + buffer_ids.push( + self.global() + .wgpu_id_hub() + .lock() + .create_buffer_id(descriptor.device.id().0.backend()), + ); + } + self.channel .0 .send(( @@ -193,37 +289,42 @@ impl GPUCanvasContextMethods for GPUCanvasContext { )) .expect("Failed to create WebGPU SwapChain"); - let usage = if descriptor.usage % 2 == 0 { - descriptor.usage + 1 - } else { - descriptor.usage - }; - let text_desc = GPUTextureDescriptor { - parent: GPUObjectDescriptorBase { label: None }, - dimension: GPUTextureDimension::_2d, - format: descriptor.format, - mipLevelCount: 1, - sampleCount: 1, - usage, - size: GPUExtent3D::GPUExtent3DDict(GPUExtent3DDict { - width: self.size.get().width, - height: self.size.get().height, - depth: 1, - }), - }; - - let texture = descriptor.device.CreateTexture(&text_desc); + self.texture + .set(Some(&descriptor.device.CreateTexture(&text_desc))); self.webrender_image.set(Some(receiver.recv().unwrap())); + } - let swap_chain = GPUSwapChain::new( - &self.global(), - self.channel.clone(), - &self, - &*texture, - descriptor.parent.label.as_ref().cloned(), - ); - *self.swap_chain.borrow_mut() = Some(Dom::from_ref(&*swap_chain)); - swap_chain + /// https://gpuweb.github.io/gpuweb/#dom-gpucanvascontext-unconfigure + fn Unconfigure(&self) { + if let Some(image_key) = self.webrender_image.take() { + if let Err(e) = self.channel.0.send(( + None, + WebGPURequest::DestroySwapChain { + external_id: self.context_id.0, + image_key, + }, + )) { + warn!( + "Failed to send DestroySwapChain-ImageKey({:?}) ({})", + image_key, e + ); + } + } + self.texture.take(); + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpucanvascontext-getcurrenttexture + fn GetCurrentTexture(&self) -> Fallible> { + // Step 5. + self.mark_as_dirty(); + // Step 6. + self.texture.get().ok_or(Error::InvalidState) + } +} + +impl Drop for GPUCanvasContext { + fn drop(&mut self) { + self.Unconfigure() } } diff --git a/components/script/dom/gpucommandbuffer.rs b/components/script/dom/gpucommandbuffer.rs index 633dcb9cc6a..babaf3cb089 100644 --- a/components/script/dom/gpucommandbuffer.rs +++ b/components/script/dom/gpucommandbuffer.rs @@ -28,7 +28,7 @@ pub struct GPUCommandBuffer { #[ignore_malloc_size_of = "defined in webgpu"] #[no_trace] channel: WebGPU, - label: DomRefCell>, + label: DomRefCell, #[no_trace] command_buffer: WebGPUCommandBuffer, buffers: DomRefCell>>, @@ -39,7 +39,7 @@ impl GPUCommandBuffer { channel: WebGPU, command_buffer: WebGPUCommandBuffer, buffers: HashSet>, - label: Option, + label: USVString, ) -> Self { Self { channel, @@ -55,7 +55,7 @@ impl GPUCommandBuffer { channel: WebGPU, command_buffer: WebGPUCommandBuffer, buffers: HashSet>, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPUCommandBuffer::new_inherited( @@ -95,12 +95,12 @@ impl GPUCommandBuffer { impl GPUCommandBufferMethods for GPUCommandBuffer { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } } diff --git a/components/script/dom/gpucommandencoder.rs b/components/script/dom/gpucommandencoder.rs index 30eb4c91ba9..4e7102eec69 100644 --- a/components/script/dom/gpucommandencoder.rs +++ b/components/script/dom/gpucommandencoder.rs @@ -5,14 +5,10 @@ use crate::dom::bindings::cell::DomRefCell; use crate::dom::bindings::codegen::Bindings::GPUBufferBinding::GPUSize64; use crate::dom::bindings::codegen::Bindings::GPUCommandEncoderBinding::{ - GPUBufferCopyView, GPUCommandBufferDescriptor, GPUCommandEncoderMethods, - GPUComputePassDescriptor, GPUOrigin3D, GPURenderPassDescriptor, GPUStencilLoadValue, - GPUStoreOp, GPUTextureCopyView, GPUTextureDataLayout, + GPUCommandEncoderMethods, GPUComputePassDescriptor, GPUOrigin3D, GPURenderPassDescriptor, + GPUStoreOp, }; use crate::dom::bindings::codegen::Bindings::GPUTextureBinding::GPUExtent3D; -use crate::dom::bindings::codegen::UnionTypes::{ - GPULoadOpOrDoubleSequenceOrGPUColorDict as GPUColorLoad, GPULoadOpOrFloat, -}; use crate::dom::bindings::num::Finite; use crate::dom::bindings::reflector::DomObject; use crate::dom::bindings::reflector::{reflect_dom_object, Reflector}; @@ -31,6 +27,14 @@ use std::collections::HashSet; use webgpu::wgpu::command as wgpu_com; use webgpu::{self, wgt, WebGPU, WebGPURequest}; +use super::bindings::codegen::Bindings::GPUCommandBufferBinding::GPUCommandBufferDescriptor; +use super::bindings::codegen::Bindings::GPUCommandEncoderBinding::{ + GPUImageCopyBuffer, GPUImageCopyTexture, GPUImageDataLayout, GPULoadOp, +}; +use super::bindings::codegen::Bindings::GPUTextureViewBinding::GPUTextureAspect; +use super::bindings::codegen::UnionTypes::DoubleSequenceOrGPUColorDict; + +// TODO(sagudev): this is different now // https://gpuweb.github.io/gpuweb/#enumdef-encoder-state #[derive(MallocSizeOf, PartialEq)] pub enum GPUCommandEncoderState { @@ -46,7 +50,7 @@ pub struct GPUCommandEncoder { #[ignore_malloc_size_of = "defined in webgpu"] #[no_trace] channel: WebGPU, - label: DomRefCell>, + label: DomRefCell, #[no_trace] encoder: webgpu::WebGPUCommandEncoder, buffers: DomRefCell>>, @@ -60,7 +64,7 @@ impl GPUCommandEncoder { channel: WebGPU, device: &GPUDevice, encoder: webgpu::WebGPUCommandEncoder, - label: Option, + label: USVString, ) -> Self { Self { channel, @@ -79,7 +83,7 @@ impl GPUCommandEncoder { channel: WebGPU, device: &GPUDevice, encoder: webgpu::WebGPUCommandEncoder, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPUCommandEncoder::new_inherited( @@ -107,12 +111,12 @@ impl GPUCommandEncoder { impl GPUCommandEncoderMethods for GPUCommandEncoder { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } @@ -129,7 +133,16 @@ impl GPUCommandEncoderMethods for GPUCommandEncoder { let compute_pass = if !self.valid.get() { None } else { - Some(wgpu_com::ComputePass::new(self.encoder.0)) + Some(wgpu_com::ComputePass::new( + self.encoder.0, + &wgpu_com::ComputePassDescriptor { + label: descriptor + .parent + .label + .as_ref() + .map(|l| Cow::Borrowed(&**l)), + }, + )) }; GPUComputePassEncoder::new( @@ -137,7 +150,7 @@ impl GPUCommandEncoderMethods for GPUCommandEncoder { self.channel.clone(), &self, compute_pass, - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.label.clone().unwrap_or_default(), ) } @@ -155,38 +168,20 @@ impl GPUCommandEncoderMethods for GPUCommandEncoder { None } else { let depth_stencil = descriptor.depthStencilAttachment.as_ref().map(|depth| { - let (depth_load_op, clear_depth) = match depth.depthLoadValue { - GPULoadOpOrFloat::GPULoadOp(_) => (wgpu_com::LoadOp::Load, 0.0f32), - GPULoadOpOrFloat::Float(f) => (wgpu_com::LoadOp::Clear, *f), - }; - let (stencil_load_op, clear_stencil) = match depth.stencilLoadValue { - GPUStencilLoadValue::GPULoadOp(_) => (wgpu_com::LoadOp::Load, 0u32), - GPUStencilLoadValue::RangeEnforcedUnsignedLong(l) => { - (wgpu_com::LoadOp::Clear, l) + wgpu_com::RenderPassDepthStencilAttachment { + depth: wgpu_com::PassChannel { + load_op: convert_load_op(depth.depthLoadOp), + store_op: convert_store_op(depth.depthStoreOp), + clear_value: *depth.depthClearValue.unwrap_or_default(), + read_only: depth.depthReadOnly, }, - }; - let depth_channel = wgpu_com::PassChannel { - load_op: depth_load_op, - store_op: match depth.depthStoreOp { - GPUStoreOp::Store => wgpu_com::StoreOp::Store, - GPUStoreOp::Clear => wgpu_com::StoreOp::Clear, + stencil: wgpu_com::PassChannel { + load_op: convert_load_op(depth.stencilLoadOp), + store_op: convert_store_op(depth.stencilStoreOp), + clear_value: depth.stencilClearValue, + read_only: depth.stencilReadOnly, }, - clear_value: clear_depth, - read_only: depth.depthReadOnly, - }; - let stencil_channel = wgpu_com::PassChannel { - load_op: stencil_load_op, - store_op: match depth.stencilStoreOp { - GPUStoreOp::Store => wgpu_com::StoreOp::Store, - GPUStoreOp::Clear => wgpu_com::StoreOp::Clear, - }, - clear_value: clear_stencil, - read_only: depth.stencilReadOnly, - }; - wgpu_com::DepthStencilAttachmentDescriptor { - attachment: depth.attachment.id().0, - depth: depth_channel, - stencil: stencil_channel, + view: depth.view.id().0, } }); @@ -196,56 +191,54 @@ impl GPUCommandEncoderMethods for GPUCommandEncoder { .colorAttachments .iter() .map(|color| { - let (load_op, clear_value) = match color.loadValue { - GPUColorLoad::GPULoadOp(_) => { - (wgpu_com::LoadOp::Load, wgt::Color::TRANSPARENT) - }, - GPUColorLoad::DoubleSequence(ref s) => { - let mut w = s.clone(); - if w.len() < 3 { - w.resize(3, Finite::wrap(0.0f64)); - } - w.resize(4, Finite::wrap(1.0f64)); - ( - wgpu_com::LoadOp::Clear, - wgt::Color { - r: *w[0], - g: *w[1], - b: *w[2], - a: *w[3], - }, - ) - }, - GPUColorLoad::GPUColorDict(ref d) => ( - wgpu_com::LoadOp::Clear, - wgt::Color { - r: *d.r, - g: *d.g, - b: *d.b, - a: *d.a, - }, - ), - }; let channel = wgpu_com::PassChannel { - load_op, - store_op: match color.storeOp { - GPUStoreOp::Store => wgpu_com::StoreOp::Store, - GPUStoreOp::Clear => wgpu_com::StoreOp::Clear, + load_op: convert_load_op(Some(color.loadOp)), + store_op: convert_store_op(Some(color.storeOp)), + clear_value: if let Some(clear_val) = &color.clearValue { + match clear_val { + DoubleSequenceOrGPUColorDict::DoubleSequence(s) => { + let mut w = s.clone(); + if w.len() < 3 { + w.resize(3, Finite::wrap(0.0f64)); + } + w.resize(4, Finite::wrap(1.0f64)); + wgt::Color { + r: *w[0], + g: *w[1], + b: *w[2], + a: *w[3], + } + }, + DoubleSequenceOrGPUColorDict::GPUColorDict(d) => { + wgt::Color { + r: *d.r, + g: *d.g, + b: *d.b, + a: *d.a, + } + }, + } + } else { + wgt::Color::TRANSPARENT }, - clear_value, read_only: false, }; - wgpu_com::ColorAttachmentDescriptor { - attachment: color.attachment.id().0, + Some(wgpu_com::RenderPassColorAttachment { resolve_target: color.resolveTarget.as_ref().map(|t| t.id().0), channel, - } + view: color.view.id().0, + }) }) .collect::>(), ), depth_stencil_attachment: depth_stencil.as_ref(), + label: descriptor + .parent + .label + .as_ref() + .map(|l| Cow::Borrowed(&**l)), }; - Some(wgpu_com::RenderPass::new(self.encoder.0, desc)) + Some(wgpu_com::RenderPass::new(self.encoder.0, &desc)) }; GPURenderPassEncoder::new( @@ -253,7 +246,7 @@ impl GPUCommandEncoderMethods for GPUCommandEncoder { self.channel.clone(), render_pass, &self, - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.label.clone().unwrap_or_default(), ) } @@ -294,8 +287,8 @@ impl GPUCommandEncoderMethods for GPUCommandEncoder { /// https://gpuweb.github.io/gpuweb/#dom-gpucommandencoder-copybuffertotexture fn CopyBufferToTexture( &self, - source: &GPUBufferCopyView, - destination: &GPUTextureCopyView, + source: &GPUImageCopyBuffer, + destination: &GPUImageCopyTexture, copy_size: GPUExtent3D, ) { if !(*self.state.borrow() == GPUCommandEncoderState::Open) { @@ -313,8 +306,8 @@ impl GPUCommandEncoderMethods for GPUCommandEncoder { None, WebGPURequest::CopyBufferToTexture { command_encoder_id: self.encoder.0, - source: convert_buffer_cv(source), - destination: convert_texture_cv(destination), + source: convert_ic_buffer(source), + destination: convert_ic_texture(destination), copy_size: convert_texture_size_to_wgt(&convert_texture_size_to_dict( ©_size, )), @@ -323,11 +316,11 @@ impl GPUCommandEncoderMethods for GPUCommandEncoder { .expect("Failed to send CopyBufferToTexture"); } - /// https://gpuweb.github.io/gpuweb/#GPUCommandEncoder-copyTextureToBuffer + /// https://gpuweb.github.io/gpuweb/#dom-gpucommandencoder-copybuffertotexture fn CopyTextureToBuffer( &self, - source: &GPUTextureCopyView, - destination: &GPUBufferCopyView, + source: &GPUImageCopyTexture, + destination: &GPUImageCopyBuffer, copy_size: GPUExtent3D, ) { if !(*self.state.borrow() == GPUCommandEncoderState::Open) { @@ -345,8 +338,8 @@ impl GPUCommandEncoderMethods for GPUCommandEncoder { None, WebGPURequest::CopyTextureToBuffer { command_encoder_id: self.encoder.0, - source: convert_texture_cv(source), - destination: convert_buffer_cv(destination), + source: convert_ic_texture(source), + destination: convert_ic_buffer(destination), copy_size: convert_texture_size_to_wgt(&convert_texture_size_to_dict( ©_size, )), @@ -358,8 +351,8 @@ impl GPUCommandEncoderMethods for GPUCommandEncoder { /// https://gpuweb.github.io/gpuweb/#GPUCommandEncoder-copyTextureToTexture fn CopyTextureToTexture( &self, - source: &GPUTextureCopyView, - destination: &GPUTextureCopyView, + source: &GPUImageCopyTexture, + destination: &GPUImageCopyTexture, copy_size: GPUExtent3D, ) { if !(*self.state.borrow() == GPUCommandEncoderState::Open) { @@ -373,8 +366,8 @@ impl GPUCommandEncoderMethods for GPUCommandEncoder { None, WebGPURequest::CopyTextureToTexture { command_encoder_id: self.encoder.0, - source: convert_texture_cv(source), - destination: convert_texture_cv(destination), + source: convert_ic_texture(source), + destination: convert_ic_texture(destination), copy_size: convert_texture_size_to_wgt(&convert_texture_size_to_dict( ©_size, )), @@ -406,24 +399,40 @@ impl GPUCommandEncoderMethods for GPUCommandEncoder { self.channel.clone(), buffer, self.buffers.borrow_mut().drain().collect(), - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.label.clone().unwrap_or_default(), ) } } -fn convert_buffer_cv(buffer_cv: &GPUBufferCopyView) -> wgpu_com::BufferCopyView { - wgpu_com::BufferCopyView { - buffer: buffer_cv.buffer.id().0, - layout: convert_texture_data_layout(&buffer_cv.parent), +fn convert_load_op(op: Option) -> wgpu_com::LoadOp { + match op { + Some(GPULoadOp::Load) => wgpu_com::LoadOp::Load, + Some(GPULoadOp::Clear) => wgpu_com::LoadOp::Clear, + None => wgpu_com::LoadOp::Clear, } } -pub fn convert_texture_cv(texture_cv: &GPUTextureCopyView) -> wgpu_com::TextureCopyView { - wgpu_com::TextureCopyView { - texture: texture_cv.texture.id().0, - mip_level: texture_cv.mipLevel, - origin: match texture_cv.origin { - GPUOrigin3D::RangeEnforcedUnsignedLongSequence(ref v) => { +fn convert_store_op(op: Option) -> wgpu_com::StoreOp { + match op { + Some(GPUStoreOp::Store) => wgpu_com::StoreOp::Store, + Some(GPUStoreOp::Discard) => wgpu_com::StoreOp::Discard, + None => wgpu_com::StoreOp::Discard, + } +} + +fn convert_ic_buffer(ic_buffer: &GPUImageCopyBuffer) -> wgpu_com::ImageCopyBuffer { + wgpu_com::ImageCopyBuffer { + buffer: ic_buffer.buffer.id().0, + layout: convert_image_data_layout(&ic_buffer.parent), + } +} + +pub fn convert_ic_texture(ic_texture: &GPUImageCopyTexture) -> wgpu_com::ImageCopyTexture { + wgpu_com::ImageCopyTexture { + texture: ic_texture.texture.id().0, + mip_level: ic_texture.mipLevel, + origin: match ic_texture.origin { + Some(GPUOrigin3D::RangeEnforcedUnsignedLongSequence(ref v)) => { let mut w = v.clone(); w.resize(3, 0); wgt::Origin3d { @@ -432,17 +441,23 @@ pub fn convert_texture_cv(texture_cv: &GPUTextureCopyView) -> wgpu_com::TextureC z: w[2], } }, - GPUOrigin3D::GPUOrigin3DDict(ref d) => wgt::Origin3d { + Some(GPUOrigin3D::GPUOrigin3DDict(ref d)) => wgt::Origin3d { x: d.x, y: d.y, z: d.z, }, + None => wgt::Origin3d::default(), + }, + aspect: match ic_texture.aspect { + GPUTextureAspect::All => wgt::TextureAspect::All, + GPUTextureAspect::Stencil_only => wgt::TextureAspect::StencilOnly, + GPUTextureAspect::Depth_only => wgt::TextureAspect::DepthOnly, }, } } -pub fn convert_texture_data_layout(data_layout: &GPUTextureDataLayout) -> wgt::TextureDataLayout { - wgt::TextureDataLayout { +pub fn convert_image_data_layout(data_layout: &GPUImageDataLayout) -> wgt::ImageDataLayout { + wgt::ImageDataLayout { offset: data_layout.offset as wgt::BufferAddress, bytes_per_row: data_layout.bytesPerRow, rows_per_image: data_layout.rowsPerImage, diff --git a/components/script/dom/gpucompilationinfo.rs b/components/script/dom/gpucompilationinfo.rs new file mode 100644 index 00000000000..e7cbb705b31 --- /dev/null +++ b/components/script/dom/gpucompilationinfo.rs @@ -0,0 +1,27 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +use crate::dom::bindings::reflector::Reflector; +use crate::script_runtime::JSContext; +use dom_struct::dom_struct; + +use js::jsval::JSVal; + +use super::bindings::codegen::Bindings::GPUCompilationInfoBinding::GPUCompilationInfoMethods; +use super::bindings::root::Dom; +use super::types::GPUCompilationMessage; + +#[dom_struct] +pub struct GPUCompilationInfo { + reflector_: Reflector, + msg: Dom, +} + +// TODO: wgpu does not expose right fields right now +impl GPUCompilationInfoMethods for GPUCompilationInfo { + /// https://gpuweb.github.io/gpuweb/#dom-gpucompilationinfo-messages + fn Messages(&self, _cx: JSContext) -> JSVal { + todo!() + } +} diff --git a/components/script/dom/gpucompilationmessage.rs b/components/script/dom/gpucompilationmessage.rs new file mode 100644 index 00000000000..83912e43ee1 --- /dev/null +++ b/components/script/dom/gpucompilationmessage.rs @@ -0,0 +1,98 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +#![allow(dead_code)] // this file is stub as wgpu does not provide info + +use crate::dom::bindings::reflector::Reflector; +use crate::test::DOMString; +use dom_struct::dom_struct; + +use super::bindings::codegen::Bindings::GPUCompilationMessageBinding::{ + GPUCompilationMessageMethods, GPUCompilationMessageType, +}; +use super::bindings::root::DomRoot; +use super::types::GlobalScope; +use crate::dom::bindings::reflector::reflect_dom_object; + +#[dom_struct] +pub struct GPUCompilationMessage { + reflector_: Reflector, + // #[ignore_malloc_size_of = "defined in wgpu-types"] + message: DOMString, + mtype: GPUCompilationMessageType, + line_num: u64, + line_pos: u64, + offset: u64, + length: u64, +} + +impl GPUCompilationMessage { + fn new_inherited( + message: DOMString, + mtype: GPUCompilationMessageType, + line_num: u64, + line_pos: u64, + offset: u64, + length: u64, + ) -> Self { + Self { + reflector_: Reflector::new(), + message, + mtype, + line_num, + line_pos, + offset, + length, + } + } + + pub fn new( + global: &GlobalScope, + message: DOMString, + mtype: GPUCompilationMessageType, + line_num: u64, + line_pos: u64, + offset: u64, + length: u64, + ) -> DomRoot { + reflect_dom_object( + Box::new(Self::new_inherited( + message, mtype, line_num, line_pos, offset, length, + )), + global, + ) + } +} + +impl GPUCompilationMessageMethods for GPUCompilationMessage { + /// https://gpuweb.github.io/gpuweb/#dom-gpucompilationmessage-message + fn Message(&self) -> DOMString { + self.message.to_owned() + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpucompilationmessage-type + fn Type(&self) -> GPUCompilationMessageType { + self.mtype + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpucompilationmessage-linenum + fn LineNum(&self) -> u64 { + self.line_num + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpucompilationmessage-linepos + fn LinePos(&self) -> u64 { + self.line_pos + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpucompilationmessage-offset + fn Offset(&self) -> u64 { + self.offset + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpucompilationmessage-length + fn Length(&self) -> u64 { + self.length + } +} diff --git a/components/script/dom/gpucomputepassencoder.rs b/components/script/dom/gpucomputepassencoder.rs index c9b807ae6ac..e3b9383cfeb 100644 --- a/components/script/dom/gpucomputepassencoder.rs +++ b/components/script/dom/gpucomputepassencoder.rs @@ -18,13 +18,15 @@ use webgpu::{ WebGPU, WebGPURequest, }; +use super::bindings::error::Fallible; + #[dom_struct] pub struct GPUComputePassEncoder { reflector_: Reflector, #[ignore_malloc_size_of = "defined in webgpu"] #[no_trace] channel: WebGPU, - label: DomRefCell>, + label: DomRefCell, #[ignore_malloc_size_of = "defined in wgpu-core"] #[no_trace] compute_pass: DomRefCell>, @@ -36,7 +38,7 @@ impl GPUComputePassEncoder { channel: WebGPU, parent: &GPUCommandEncoder, compute_pass: Option, - label: Option, + label: USVString, ) -> Self { Self { channel, @@ -52,7 +54,7 @@ impl GPUComputePassEncoder { channel: WebGPU, parent: &GPUCommandEncoder, compute_pass: Option, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPUComputePassEncoder::new_inherited( @@ -68,26 +70,26 @@ impl GPUComputePassEncoder { impl GPUComputePassEncoderMethods for GPUComputePassEncoder { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } - /// https://gpuweb.github.io/gpuweb/#dom-gpucomputepassencoder-dispatch - fn Dispatch(&self, x: u32, y: u32, z: u32) { + /// https://gpuweb.github.io/gpuweb/#dom-gpucomputepassencoder-dispatchworkgroups + fn DispatchWorkgroups(&self, x: u32, y: u32, z: u32) { if let Some(compute_pass) = self.compute_pass.borrow_mut().as_mut() { - wgpu_comp::wgpu_compute_pass_dispatch(compute_pass, x, y, z); + wgpu_comp::wgpu_compute_pass_dispatch_workgroups(compute_pass, x, y, z); } } - /// https://gpuweb.github.io/gpuweb/#dom-gpucomputepassencoder-dispatchindirect - fn DispatchIndirect(&self, indirect_buffer: &GPUBuffer, indirect_offset: u64) { + /// https://gpuweb.github.io/gpuweb/#dom-gpucomputepassencoder-dispatchworkgroupsindirect + fn DispatchWorkgroupsIndirect(&self, indirect_buffer: &GPUBuffer, indirect_offset: u64) { if let Some(compute_pass) = self.compute_pass.borrow_mut().as_mut() { - wgpu_comp::wgpu_compute_pass_dispatch_indirect( + wgpu_comp::wgpu_compute_pass_dispatch_workgroups_indirect( compute_pass, indirect_buffer.id().0, indirect_offset, @@ -96,7 +98,7 @@ impl GPUComputePassEncoderMethods for GPUComputePassEncoder { } /// https://gpuweb.github.io/gpuweb/#dom-gpurenderpassencoder-endpass - fn EndPass(&self) { + fn End(&self) -> Fallible<()> { let compute_pass = self.compute_pass.borrow_mut().take(); self.channel .0 @@ -107,12 +109,13 @@ impl GPUComputePassEncoderMethods for GPUComputePassEncoder { compute_pass, }, )) - .expect("Failed to send RunComputePass"); + .expect("Failed to send RunComputePass"); //TODO: handle error self.command_encoder.set_state( GPUCommandEncoderState::Open, GPUCommandEncoderState::EncodingComputePass, ); + Ok(()) } /// https://gpuweb.github.io/gpuweb/#dom-gpuprogrammablepassencoder-setbindgroup diff --git a/components/script/dom/gpucomputepipeline.rs b/components/script/dom/gpucomputepipeline.rs index cf325837663..518e826a4af 100644 --- a/components/script/dom/gpucomputepipeline.rs +++ b/components/script/dom/gpucomputepipeline.rs @@ -18,7 +18,7 @@ use webgpu::{WebGPUBindGroupLayout, WebGPUComputePipeline}; #[dom_struct] pub struct GPUComputePipeline { reflector_: Reflector, - label: DomRefCell>, + label: DomRefCell, #[no_trace] compute_pipeline: WebGPUComputePipeline, #[no_trace] @@ -29,7 +29,7 @@ pub struct GPUComputePipeline { impl GPUComputePipeline { fn new_inherited( compute_pipeline: WebGPUComputePipeline, - label: Option, + label: USVString, bgls: Vec, device: &GPUDevice, ) -> Self { @@ -45,7 +45,7 @@ impl GPUComputePipeline { pub fn new( global: &GlobalScope, compute_pipeline: WebGPUComputePipeline, - label: Option, + label: USVString, bgls: Vec, device: &GPUDevice, ) -> DomRoot { @@ -69,12 +69,12 @@ impl GPUComputePipeline { impl GPUComputePipelineMethods for GPUComputePipeline { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } @@ -86,7 +86,7 @@ impl GPUComputePipelineMethods for GPUComputePipeline { Ok(GPUBindGroupLayout::new( &self.global(), self.bind_group_layouts[index as usize], - None, + USVString::default(), )) } } diff --git a/components/script/dom/gpudevice.rs b/components/script/dom/gpudevice.rs index 054a0ecb8e7..4668871a755 100644 --- a/components/script/dom/gpudevice.rs +++ b/components/script/dom/gpudevice.rs @@ -7,13 +7,10 @@ use crate::dom::bindings::cell::DomRefCell; use crate::dom::bindings::codegen::Bindings::EventBinding::EventInit; use crate::dom::bindings::codegen::Bindings::EventTargetBinding::EventTargetMethods; -use crate::dom::bindings::codegen::Bindings::GPUAdapterBinding::GPULimits; use crate::dom::bindings::codegen::Bindings::GPUBindGroupBinding::{ GPUBindGroupDescriptor, GPUBindingResource, }; -use crate::dom::bindings::codegen::Bindings::GPUBindGroupLayoutBinding::{ - GPUBindGroupLayoutDescriptor, GPUBindingType, -}; +use crate::dom::bindings::codegen::Bindings::GPUBindGroupLayoutBinding::GPUBindGroupLayoutDescriptor; use crate::dom::bindings::codegen::Bindings::GPUBufferBinding::GPUBufferDescriptor; use crate::dom::bindings::codegen::Bindings::GPUComputePipelineBinding::GPUComputePipelineDescriptor; use crate::dom::bindings::codegen::Bindings::GPUDeviceBinding::{ @@ -23,24 +20,22 @@ use crate::dom::bindings::codegen::Bindings::GPUObjectBaseBinding::GPUObjectDesc use crate::dom::bindings::codegen::Bindings::GPUPipelineLayoutBinding::GPUPipelineLayoutDescriptor; use crate::dom::bindings::codegen::Bindings::GPURenderBundleEncoderBinding::GPURenderBundleEncoderDescriptor; use crate::dom::bindings::codegen::Bindings::GPURenderPipelineBinding::{ - GPUBlendDescriptor, GPUBlendFactor, GPUBlendOperation, GPUCullMode, GPUFrontFace, - GPUIndexFormat, GPUInputStepMode, GPUPrimitiveTopology, GPURenderPipelineDescriptor, - GPUStencilOperation, GPUVertexFormat, + GPUBlendFactor, GPUBlendOperation, GPUCullMode, GPUFrontFace, GPUIndexFormat, + GPUPrimitiveTopology, GPURenderPipelineDescriptor, GPUStencilOperation, GPUVertexFormat, }; use crate::dom::bindings::codegen::Bindings::GPUSamplerBinding::{ GPUAddressMode, GPUCompareFunction, GPUFilterMode, GPUSamplerDescriptor, }; use crate::dom::bindings::codegen::Bindings::GPUShaderModuleBinding::GPUShaderModuleDescriptor; +use crate::dom::bindings::codegen::Bindings::GPUSupportedLimitsBinding::GPUSupportedLimitsBinding::GPUSupportedLimitsMethods; use crate::dom::bindings::codegen::Bindings::GPUTextureBinding::{ - GPUExtent3D, GPUExtent3DDict, GPUTextureComponentType, GPUTextureDescriptor, - GPUTextureDimension, GPUTextureFormat, + GPUExtent3D, GPUExtent3DDict, GPUTextureDescriptor, GPUTextureDimension, GPUTextureFormat, }; use crate::dom::bindings::codegen::Bindings::GPUTextureViewBinding::GPUTextureViewDimension; use crate::dom::bindings::codegen::Bindings::GPUUncapturedErrorEventBinding::GPUUncapturedErrorEventInit; use crate::dom::bindings::codegen::Bindings::GPUValidationErrorBinding::{ GPUError, GPUErrorFilter, }; -use crate::dom::bindings::codegen::UnionTypes::Uint32ArrayOrString; use crate::dom::bindings::error::Error; use crate::dom::bindings::reflector::{reflect_dom_object, DomObject}; use crate::dom::bindings::root::{Dom, DomRoot}; @@ -66,13 +61,12 @@ use crate::dom::gpuuncapturederrorevent::GPUUncapturedErrorEvent; use crate::dom::gpuvalidationerror::GPUValidationError; use crate::dom::promise::Promise; use crate::realms::InRealm; -use crate::script_runtime::JSContext as SafeJSContext; use dom_struct::dom_struct; use js::jsapi::{Heap, JSObject}; use std::borrow::Cow; use std::cell::{Cell, RefCell}; use std::collections::HashMap; -use std::ptr::{self, NonNull}; +use std::num::NonZeroU64; use std::rc::Rc; use webgpu::wgpu::{ binding_model as wgpu_bind, command as wgpu_com, @@ -81,6 +75,18 @@ use webgpu::wgpu::{ }; use webgpu::{self, identity::WebGPUOpResult, wgt, ErrorScopeId, WebGPU, WebGPURequest}; +use super::bindings::codegen::Bindings::GPUBindGroupLayoutBinding::{ + GPUBufferBindingType, GPUSamplerBindingType, GPUStorageTextureAccess, GPUTextureSampleType, +}; +use super::bindings::codegen::Bindings::GPUDeviceLostInfoBinding::GPUDeviceLostReason; +use super::bindings::codegen::Bindings::GPURenderPipelineBinding::{ + GPUBlendComponent, GPUPrimitiveState, GPUVertexStepMode, +}; +use super::bindings::codegen::UnionTypes::GPUPipelineLayoutOrGPUAutoLayoutMode; +use super::bindings::error::Fallible; +use super::gpudevicelostinfo::GPUDeviceLostInfo; +use super::gpusupportedlimits::GPUSupportedLimits; + #[derive(JSTraceable, MallocSizeOf)] struct ErrorScopeInfo { op_count: u64, @@ -113,15 +119,15 @@ pub struct GPUDevice { adapter: Dom, #[ignore_malloc_size_of = "mozjs"] extensions: Heap<*mut JSObject>, - #[ignore_malloc_size_of = "Because it is non-owning"] - limits: GPULimits, - label: DomRefCell>, + limits: Dom, + label: DomRefCell, #[no_trace] device: webgpu::WebGPUDevice, default_queue: Dom, scope_context: DomRefCell, #[ignore_malloc_size_of = "promises are hard"] lost_promise: DomRefCell>>, + valid: Cell, } impl GPUDevice { @@ -129,18 +135,18 @@ impl GPUDevice { channel: WebGPU, adapter: &GPUAdapter, extensions: Heap<*mut JSObject>, - limits: GPULimits, + limits: &GPUSupportedLimits, device: webgpu::WebGPUDevice, queue: &GPUQueue, - label: Option, + label: String, ) -> Self { Self { eventtarget: EventTarget::new_inherited(), channel, adapter: Dom::from_ref(adapter), extensions, - limits, - label: DomRefCell::new(label.map(|l| USVString::from(l))), + limits: Dom::from_ref(limits), + label: DomRefCell::new(USVString::from(label)), device, default_queue: Dom::from_ref(queue), scope_context: DomRefCell::new(ScopeContext { @@ -149,6 +155,7 @@ impl GPUDevice { next_scope_id: ErrorScopeId::new(1).unwrap(), }), lost_promise: DomRefCell::new(None), + valid: Cell::new(true), } } @@ -157,15 +164,16 @@ impl GPUDevice { channel: WebGPU, adapter: &GPUAdapter, extensions: Heap<*mut JSObject>, - limits: GPULimits, + limits: wgt::Limits, device: webgpu::WebGPUDevice, queue: webgpu::WebGPUQueue, - label: Option, + label: String, ) -> DomRoot { let queue = GPUQueue::new(global, channel.clone(), queue); + let limits = GPUSupportedLimits::new(global, limits); let device = reflect_dom_object( Box::new(GPUDevice::new_inherited( - channel, adapter, extensions, limits, device, &queue, label, + channel, adapter, extensions, &limits, device, &queue, label, )), global, ); @@ -179,10 +187,6 @@ impl GPUDevice { self.device } - pub fn limits(&self) -> &GPULimits { - &self.limits - } - pub fn handle_server_msg(&self, scope: Option, result: WebGPUOpResult) { let result = match result { WebGPUOpResult::Success => Ok(()), @@ -291,13 +295,13 @@ impl GPUDevice { fn get_pipeline_layout_data( &self, - layout: &Option>, + layout: &GPUPipelineLayoutOrGPUAutoLayoutMode, ) -> ( Option, Option<(PipelineLayoutId, Vec)>, Vec, ) { - if let Some(ref layout) = layout { + if let GPUPipelineLayoutOrGPUAutoLayoutMode::GPUPipelineLayout(ref layout) = layout { (Some(layout.id().0), None, layout.bind_group_layouts()) } else { let layout_id = self @@ -305,7 +309,7 @@ impl GPUDevice { .wgpu_id_hub() .lock() .create_pipeline_layout_id(self.device.0.backend()); - let max_bind_grps = self.limits.maxBindGroups; + let max_bind_grps = self.limits.MaxBindGroups(); let mut bgls = Vec::with_capacity(max_bind_grps as usize); let mut bgl_ids = Vec::with_capacity(max_bind_grps as usize); for _ in 0..max_bind_grps { @@ -320,54 +324,55 @@ impl GPUDevice { (None, Some((layout_id, bgl_ids)), bgls) } } + + /// https://gpuweb.github.io/gpuweb/#lose-the-device + pub fn lose(&self, reason: GPUDeviceLostReason) { + if let Some(ref lost_promise) = *self.lost_promise.borrow() { + let global = &self.global(); + let msg = match reason { + GPUDeviceLostReason::Unknown => "Unknown reason for your device loss.", + GPUDeviceLostReason::Destroyed => { + "Device self-destruction sequence activated successfully!" + }, + }; + let lost = GPUDeviceLostInfo::new(global, msg.into(), reason); + lost_promise.resolve_native(&*lost); + } + } } impl GPUDeviceMethods for GPUDevice { - /// https://gpuweb.github.io/gpuweb/#dom-gpudevice-adapter - fn Adapter(&self) -> DomRoot { - DomRoot::from_ref(&self.adapter) - } - - /// https://gpuweb.github.io/gpuweb/#dom-gpudevice-extensions - fn Extensions(&self, _cx: SafeJSContext) -> NonNull { - NonNull::new(self.extensions.get()).unwrap() - } - /// https://gpuweb.github.io/gpuweb/#dom-gpudevice-limits - fn Limits(&self, cx: SafeJSContext) -> NonNull { - rooted!(in (*cx) let mut limits = ptr::null_mut::()); - unsafe { - self.limits.to_jsobject(*cx, limits.handle_mut()); - } - NonNull::new(limits.get()).unwrap() + fn Limits(&self) -> DomRoot { + DomRoot::from_ref(&self.limits) } - /// https://gpuweb.github.io/gpuweb/#dom-gpudevice-defaultqueue - fn DefaultQueue(&self) -> DomRoot { + /// https://gpuweb.github.io/gpuweb/#dom-gpudevice-queue + fn GetQueue(&self) -> DomRoot { DomRoot::from_ref(&self.default_queue) } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } /// https://gpuweb.github.io/gpuweb/#dom-gpudevice-lost - fn Lost(&self, comp: InRealm) -> Rc { + fn GetLost(&self, comp: InRealm) -> Fallible> { let promise = Promise::new_in_current_realm(comp); *self.lost_promise.borrow_mut() = Some(promise.clone()); - promise + Ok(promise) } /// https://gpuweb.github.io/gpuweb/#dom-gpudevice-createbuffer - fn CreateBuffer(&self, descriptor: &GPUBufferDescriptor) -> DomRoot { + fn CreateBuffer(&self, descriptor: &GPUBufferDescriptor) -> Fallible> { let desc = - wgt::BufferUsage::from_bits(descriptor.usage).map(|usg| wgpu_res::BufferDescriptor { + wgt::BufferUsages::from_bits(descriptor.usage).map(|usg| wgpu_res::BufferDescriptor { label: convert_label(&descriptor.parent), size: descriptor.size as wgt::BufferAddress, usage: usg, @@ -417,7 +422,7 @@ impl GPUDeviceMethods for GPUDevice { state = GPUBufferState::Unmapped; } - GPUBuffer::new( + Ok(GPUBuffer::new( &self.global(), self.channel.clone(), buffer, @@ -425,8 +430,8 @@ impl GPUDeviceMethods for GPUDevice { state, descriptor.size, map_info, - descriptor.parent.label.as_ref().cloned(), - ) + descriptor.parent.label.clone().unwrap_or_default(), + )) } /// https://gpuweb.github.io/gpuweb/#GPUDevice-createBindGroupLayout @@ -440,76 +445,64 @@ impl GPUDeviceMethods for GPUDevice { .entries .iter() .map(|bind| { - let visibility = match wgt::ShaderStage::from_bits(bind.visibility) { + let visibility = match wgt::ShaderStages::from_bits(bind.visibility) { Some(visibility) => visibility, None => { valid = false; - wgt::ShaderStage::empty() + wgt::ShaderStages::empty() }, }; - let ty = match bind.type_ { - GPUBindingType::Uniform_buffer => wgt::BindingType::UniformBuffer { - dynamic: bind.hasDynamicOffset.unwrap_or(false), - min_binding_size: bind.minBufferBindingSize.and_then(wgt::BufferSize::new), - }, - GPUBindingType::Storage_buffer => wgt::BindingType::StorageBuffer { - dynamic: bind.hasDynamicOffset.unwrap_or(false), - min_binding_size: bind.minBufferBindingSize.and_then(wgt::BufferSize::new), - readonly: false, - }, - GPUBindingType::Readonly_storage_buffer => wgt::BindingType::StorageBuffer { - dynamic: bind.hasDynamicOffset.unwrap_or(false), - min_binding_size: bind.minBufferBindingSize.and_then(wgt::BufferSize::new), - readonly: true, - }, - GPUBindingType::Sampled_texture => wgt::BindingType::SampledTexture { - dimension: bind - .viewDimension - .map_or(wgt::TextureViewDimension::D2, |v| { - convert_texture_view_dimension(v) - }), - component_type: convert_texture_component_type(bind.textureComponentType), - multisampled: false, - }, - GPUBindingType::Multisampled_texture => wgt::BindingType::SampledTexture { - dimension: bind - .viewDimension - .map_or(wgt::TextureViewDimension::D2, |v| { - convert_texture_view_dimension(v) - }), - component_type: convert_texture_component_type(bind.textureComponentType), - multisampled: true, - }, - GPUBindingType::Readonly_storage_texture => wgt::BindingType::StorageTexture { - dimension: bind - .viewDimension - .map_or(wgt::TextureViewDimension::D2, |v| { - convert_texture_view_dimension(v) - }), - format: bind - .storageTextureFormat - .map_or(wgt::TextureFormat::Bgra8UnormSrgb, |f| { - convert_texture_format(f) - }), - readonly: true, - }, - GPUBindingType::Writeonly_storage_texture => wgt::BindingType::StorageTexture { - dimension: bind - .viewDimension - .map_or(wgt::TextureViewDimension::D2, |v| { - convert_texture_view_dimension(v) - }), - format: bind - .storageTextureFormat - .map_or(wgt::TextureFormat::Bgra8UnormSrgb, |f| { - convert_texture_format(f) - }), - readonly: true, - }, - GPUBindingType::Sampler => wgt::BindingType::Sampler { comparison: false }, - GPUBindingType::Comparison_sampler => { - wgt::BindingType::Sampler { comparison: true } - }, + let ty = if let Some(buffer) = &bind.buffer { + wgt::BindingType::Buffer { + ty: match buffer.type_ { + GPUBufferBindingType::Uniform => wgt::BufferBindingType::Uniform, + GPUBufferBindingType::Storage => { + wgt::BufferBindingType::Storage { read_only: false } + }, + GPUBufferBindingType::Read_only_storage => { + wgt::BufferBindingType::Storage { read_only: true } + }, + }, + has_dynamic_offset: buffer.hasDynamicOffset, + min_binding_size: NonZeroU64::new(buffer.minBindingSize), + } + } else if let Some(sampler) = &bind.sampler { + wgt::BindingType::Sampler(match sampler.type_ { + GPUSamplerBindingType::Filtering => wgt::SamplerBindingType::Filtering, + GPUSamplerBindingType::Non_filtering => { + wgt::SamplerBindingType::NonFiltering + }, + GPUSamplerBindingType::Comparison => wgt::SamplerBindingType::Comparison, + }) + } else if let Some(storage) = &bind.storageTexture { + wgt::BindingType::StorageTexture { + access: match storage.access { + GPUStorageTextureAccess::Write_only => { + wgt::StorageTextureAccess::WriteOnly + }, + }, + format: convert_texture_format(storage.format), + view_dimension: convert_view_dimension(storage.viewDimension), + } + } else if let Some(texture) = &bind.texture { + wgt::BindingType::Texture { + sample_type: match texture.sampleType { + GPUTextureSampleType::Float => { + wgt::TextureSampleType::Float { filterable: true } + }, + GPUTextureSampleType::Unfilterable_float => { + wgt::TextureSampleType::Float { filterable: false } + }, + GPUTextureSampleType::Depth => wgt::TextureSampleType::Depth, + GPUTextureSampleType::Sint => wgt::TextureSampleType::Sint, + GPUTextureSampleType::Uint => wgt::TextureSampleType::Uint, + }, + view_dimension: convert_view_dimension(texture.viewDimension), + multisampled: texture.multisampled, + } + } else { + valid = false; + todo!("Handle error"); }; wgt::BindGroupLayoutEntry { @@ -558,7 +551,7 @@ impl GPUDeviceMethods for GPUDevice { GPUBindGroupLayout::new( &self.global(), bgl, - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.label.clone().unwrap_or_default(), ) } @@ -607,7 +600,7 @@ impl GPUDeviceMethods for GPUDevice { GPUPipelineLayout::new( &self.global(), pipeline_layout, - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.label.clone().unwrap_or_default(), bgls, ) } @@ -626,7 +619,7 @@ impl GPUDeviceMethods for GPUDevice { GPUBindingResource::GPUTextureView(ref t) => { wgpu_bind::BindingResource::TextureView(t.id().0) }, - GPUBindingResource::GPUBufferBindings(ref b) => { + GPUBindingResource::GPUBufferBinding(ref b) => { wgpu_bind::BindingResource::Buffer(wgpu_bind::BufferBinding { buffer_id: b.buffer.id().0, offset: b.offset, @@ -669,7 +662,7 @@ impl GPUDeviceMethods for GPUDevice { bind_group, self.device, &*descriptor.layout, - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.label.clone().unwrap_or_default(), ) } @@ -678,12 +671,6 @@ impl GPUDeviceMethods for GPUDevice { &self, descriptor: RootedTraceableBox, ) -> DomRoot { - let program: Vec = match &descriptor.code { - Uint32ArrayOrString::Uint32Array(program) => program.to_vec(), - Uint32ArrayOrString::String(program) => { - program.chars().map(|c| c as u32).collect::>() - }, - }; let program_id = self .global() .wgpu_id_hub() @@ -698,7 +685,8 @@ impl GPUDeviceMethods for GPUDevice { WebGPURequest::CreateShaderModule { device_id: self.device.0, program_id, - program, + program: descriptor.code.0.clone(), + label: None, }, )) .expect("Failed to create WebGPU ShaderModule"); @@ -707,7 +695,7 @@ impl GPUDeviceMethods for GPUDevice { GPUShaderModule::new( &self.global(), shader_module, - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.label.clone().unwrap_or_default(), ) } @@ -728,9 +716,9 @@ impl GPUDeviceMethods for GPUDevice { let desc = wgpu_pipe::ComputePipelineDescriptor { label: convert_label(&descriptor.parent.parent), layout, - compute_stage: wgpu_pipe::ProgrammableStageDescriptor { - module: descriptor.computeStage.module.id().0, - entry_point: Cow::Owned(descriptor.computeStage.entryPoint.to_string()), + stage: wgpu_pipe::ProgrammableStageDescriptor { + module: descriptor.compute.module.id().0, + entry_point: Cow::Owned(descriptor.compute.entryPoint.to_string()), }, }; @@ -751,7 +739,7 @@ impl GPUDeviceMethods for GPUDevice { GPUComputePipeline::new( &self.global(), compute_pipeline, - descriptor.parent.parent.label.as_ref().cloned(), + descriptor.parent.parent.label.clone().unwrap_or_default(), bgls, &self, ) @@ -787,15 +775,15 @@ impl GPUDeviceMethods for GPUDevice { self.channel.clone(), &self, encoder, - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.label.clone().unwrap_or_default(), ) } /// https://gpuweb.github.io/gpuweb/#dom-gpudevice-createtexture fn CreateTexture(&self, descriptor: &GPUTextureDescriptor) -> DomRoot { let size = convert_texture_size_to_dict(&descriptor.size); - let desc = - wgt::TextureUsage::from_bits(descriptor.usage).map(|usg| wgpu_res::TextureDescriptor { + let desc = wgt::TextureUsages::from_bits(descriptor.usage).map(|usg| { + wgpu_res::TextureDescriptor { label: convert_label(&descriptor.parent), size: convert_texture_size_to_wgt(&size), mip_level_count: descriptor.mipLevelCount, @@ -807,7 +795,13 @@ impl GPUDeviceMethods for GPUDevice { }, format: convert_texture_format(descriptor.format), usage: usg, - }); + view_formats: descriptor + .viewFormats + .iter() + .map(|tf| convert_texture_format(*tf)) + .collect(), + } + }); let texture_id = self .global() @@ -847,7 +841,7 @@ impl GPUDeviceMethods for GPUDevice { descriptor.dimension, descriptor.format, descriptor.usage, - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.label.clone().unwrap_or_default(), ) } @@ -872,8 +866,8 @@ impl GPUDeviceMethods for GPUDevice { lod_min_clamp: *descriptor.lodMinClamp, lod_max_clamp: *descriptor.lodMaxClamp, compare: descriptor.compare.map(|c| convert_compare_function(c)), - anisotropy_clamp: None, - ..Default::default() + anisotropy_clamp: 1, + border_color: None, }; let scope_id = self.use_current_scope(); @@ -896,7 +890,7 @@ impl GPUDeviceMethods for GPUDevice { self.device, compare_enable, sampler, - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.label.clone().unwrap_or_default(), ) } @@ -905,113 +899,36 @@ impl GPUDeviceMethods for GPUDevice { &self, descriptor: &GPURenderPipelineDescriptor, ) -> DomRoot { - let ref rs_desc = descriptor.rasterizationState; - let ref vs_desc = descriptor.vertexState; let scope_id = self.use_current_scope(); let mut valid = true; - let color_states = Cow::Owned( - descriptor - .colorStates - .iter() - .map(|state| wgt::ColorStateDescriptor { - format: convert_texture_format(state.format), - alpha_blend: convert_blend_descriptor(&state.alphaBlend), - color_blend: convert_blend_descriptor(&state.colorBlend), - write_mask: match wgt::ColorWrite::from_bits(state.writeMask) { - Some(mask) => mask, - None => { - valid = false; - wgt::ColorWrite::empty() - }, - }, - }) - .collect::>(), - ); + let (layout, implicit_ids, bgls) = self.get_pipeline_layout_data(&descriptor.parent.layout); let desc = if valid { Some(wgpu_pipe::RenderPipelineDescriptor { label: convert_label(&descriptor.parent.parent), layout, - vertex_stage: wgpu_pipe::ProgrammableStageDescriptor { - module: descriptor.vertexStage.module.id().0, - entry_point: Cow::Owned(descriptor.vertexStage.entryPoint.to_string()), - }, - fragment_stage: descriptor.fragmentStage.as_ref().map(|stage| { - wgpu_pipe::ProgrammableStageDescriptor { - module: stage.module.id().0, - entry_point: Cow::Owned(stage.entryPoint.to_string()), - } - }), - rasterization_state: Some(wgt::RasterizationStateDescriptor { - front_face: match rs_desc.frontFace { - GPUFrontFace::Ccw => wgt::FrontFace::Ccw, - GPUFrontFace::Cw => wgt::FrontFace::Cw, + vertex: wgpu_pipe::VertexState { + stage: wgpu_pipe::ProgrammableStageDescriptor { + module: descriptor.vertex.parent.module.id().0, + entry_point: Cow::Owned(descriptor.vertex.parent.entryPoint.to_string()), }, - cull_mode: match rs_desc.cullMode { - GPUCullMode::None => wgt::CullMode::None, - GPUCullMode::Front => wgt::CullMode::Front, - GPUCullMode::Back => wgt::CullMode::Back, - }, - clamp_depth: rs_desc.clampDepth, - depth_bias: rs_desc.depthBias, - depth_bias_slope_scale: *rs_desc.depthBiasSlopeScale, - depth_bias_clamp: *rs_desc.depthBiasClamp, - ..Default::default() - }), - primitive_topology: match descriptor.primitiveTopology { - GPUPrimitiveTopology::Point_list => wgt::PrimitiveTopology::PointList, - GPUPrimitiveTopology::Line_list => wgt::PrimitiveTopology::LineList, - GPUPrimitiveTopology::Line_strip => wgt::PrimitiveTopology::LineStrip, - GPUPrimitiveTopology::Triangle_list => wgt::PrimitiveTopology::TriangleList, - GPUPrimitiveTopology::Triangle_strip => wgt::PrimitiveTopology::TriangleStrip, - }, - color_states, - depth_stencil_state: descriptor.depthStencilState.as_ref().map(|dss_desc| { - wgt::DepthStencilStateDescriptor { - format: convert_texture_format(dss_desc.format), - depth_write_enabled: dss_desc.depthWriteEnabled, - depth_compare: convert_compare_function(dss_desc.depthCompare), - stencil: wgt::StencilStateDescriptor { - front: wgt::StencilStateFaceDescriptor { - compare: convert_compare_function(dss_desc.stencilFront.compare), - fail_op: convert_stencil_op(dss_desc.stencilFront.failOp), - depth_fail_op: convert_stencil_op( - dss_desc.stencilFront.depthFailOp, - ), - pass_op: convert_stencil_op(dss_desc.stencilFront.passOp), - }, - back: wgt::StencilStateFaceDescriptor { - compare: convert_compare_function(dss_desc.stencilBack.compare), - fail_op: convert_stencil_op(dss_desc.stencilBack.failOp), - depth_fail_op: convert_stencil_op(dss_desc.stencilBack.depthFailOp), - pass_op: convert_stencil_op(dss_desc.stencilBack.passOp), - }, - read_mask: dss_desc.stencilReadMask, - write_mask: dss_desc.stencilWriteMask, - }, - } - }), - vertex_state: wgpu_pipe::VertexStateDescriptor { - index_format: match vs_desc.indexFormat { - GPUIndexFormat::Uint16 => wgt::IndexFormat::Uint16, - GPUIndexFormat::Uint32 => wgt::IndexFormat::Uint32, - }, - vertex_buffers: Cow::Owned( - vs_desc - .vertexBuffers + buffers: Cow::Owned( + descriptor + .vertex + .buffers .iter() - .map(|buffer| wgpu_pipe::VertexBufferDescriptor { - stride: buffer.arrayStride, + .map(|buffer| wgpu_pipe::VertexBufferLayout { + array_stride: buffer.arrayStride, step_mode: match buffer.stepMode { - GPUInputStepMode::Vertex => wgt::InputStepMode::Vertex, - GPUInputStepMode::Instance => wgt::InputStepMode::Instance, + GPUVertexStepMode::Vertex => wgt::VertexStepMode::Vertex, + GPUVertexStepMode::Instance => wgt::VertexStepMode::Instance, }, attributes: Cow::Owned( buffer .attributes .iter() - .map(|att| wgt::VertexAttributeDescriptor { + .map(|att| wgt::VertexAttribute { format: convert_vertex_format(att.format), offset: att.offset, shader_location: att.shaderLocation, @@ -1022,9 +939,76 @@ impl GPUDeviceMethods for GPUDevice { .collect::>(), ), }, - sample_count: descriptor.sampleCount, - sample_mask: descriptor.sampleMask, - alpha_to_coverage_enabled: descriptor.alphaToCoverageEnabled, + fragment: descriptor + .fragment + .as_ref() + .map(|stage| wgpu_pipe::FragmentState { + stage: wgpu_pipe::ProgrammableStageDescriptor { + module: stage.parent.module.id().0, + entry_point: Cow::Owned(stage.parent.entryPoint.to_string()), + }, + targets: Cow::Owned( + stage + .targets + .iter() + .map(|state| { + Some(wgt::ColorTargetState { + format: convert_texture_format(state.format), + write_mask: match wgt::ColorWrites::from_bits( + state.writeMask, + ) { + Some(mask) => mask, + None => { + valid = false; + wgt::ColorWrites::empty() + }, + }, + blend: state.blend.as_ref().map(|blend| wgt::BlendState { + color: convert_blend_component(&blend.color), + alpha: convert_blend_component(&blend.alpha), + }), + }) + }) + .collect::>(), + ), + }), + primitive: convert_primitive_state(&descriptor.primitive), + depth_stencil: descriptor.depthStencil.as_ref().map(|dss_desc| { + wgt::DepthStencilState { + format: convert_texture_format(dss_desc.format), + depth_write_enabled: dss_desc.depthWriteEnabled, + depth_compare: convert_compare_function(dss_desc.depthCompare), + stencil: wgt::StencilState { + front: wgt::StencilFaceState { + compare: convert_compare_function(dss_desc.stencilFront.compare), + fail_op: convert_stencil_op(dss_desc.stencilFront.failOp), + depth_fail_op: convert_stencil_op( + dss_desc.stencilFront.depthFailOp, + ), + pass_op: convert_stencil_op(dss_desc.stencilFront.passOp), + }, + back: wgt::StencilFaceState { + compare: convert_compare_function(dss_desc.stencilBack.compare), + fail_op: convert_stencil_op(dss_desc.stencilBack.failOp), + depth_fail_op: convert_stencil_op(dss_desc.stencilBack.depthFailOp), + pass_op: convert_stencil_op(dss_desc.stencilBack.passOp), + }, + read_mask: dss_desc.stencilReadMask, + write_mask: dss_desc.stencilWriteMask, + }, + bias: wgt::DepthBiasState { + constant: dss_desc.depthBias, + slope_scale: *dss_desc.depthBiasSlopeScale, + clamp: *dss_desc.depthBiasClamp, + }, + } + }), + multisample: wgt::MultisampleState { + count: descriptor.multisample.count, + mask: descriptor.multisample.mask as u64, + alpha_to_coverage_enabled: descriptor.multisample.alphaToCoverageEnabled, + }, + multiview: None, }) } else { self.handle_server_msg( @@ -1058,7 +1042,7 @@ impl GPUDeviceMethods for GPUDevice { GPURenderPipeline::new( &self.global(), render_pipeline, - descriptor.parent.parent.label.as_ref().cloned(), + descriptor.parent.parent.label.clone().unwrap_or_default(), bgls, &self, ) @@ -1070,18 +1054,22 @@ impl GPUDeviceMethods for GPUDevice { descriptor: &GPURenderBundleEncoderDescriptor, ) -> DomRoot { let desc = wgpu_com::RenderBundleEncoderDescriptor { - label: convert_label(&descriptor.parent), + label: convert_label(&descriptor.parent.parent), color_formats: Cow::Owned( descriptor + .parent .colorFormats .iter() - .map(|f| convert_texture_format(*f)) + .map(|f| Some(convert_texture_format(*f))) .collect::>(), ), - depth_stencil_format: descriptor - .depthStencilFormat - .map(|f| convert_texture_format(f)), - sample_count: descriptor.sampleCount, + depth_stencil: Some(wgt::RenderBundleDepthStencil { + format: convert_texture_format(descriptor.parent.depthStencilFormat.unwrap()), + depth_read_only: descriptor.depthReadOnly, + stencil_read_only: descriptor.stencilReadOnly, + }), + sample_count: descriptor.parent.sampleCount, + multiview: None, }; // Handle error gracefully @@ -1093,7 +1081,7 @@ impl GPUDeviceMethods for GPUDevice { render_bundle_encoder, &self, self.channel.clone(), - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.parent.label.clone().unwrap_or_default(), ) } @@ -1149,6 +1137,101 @@ impl GPUDeviceMethods for GPUDevice { // https://gpuweb.github.io/gpuweb/#dom-gpudevice-onuncapturederror event_handler!(uncapturederror, GetOnuncapturederror, SetOnuncapturederror); + + /// https://gpuweb.github.io/gpuweb/#dom-gpudevice-destroy + fn Destroy(&self) { + if self.valid.get() { + self.valid.set(false); + + self.lose(GPUDeviceLostReason::Destroyed); + + if let Err(e) = self + .channel + .0 + .send((None, WebGPURequest::DestroyDevice(self.device.0))) + { + warn!("Failed to send DestroyDevice ({:?}) ({})", self.device.0, e); + } + } + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpudevice-createcomputepipelineasync + fn CreateComputePipelineAsync( + &self, + _descriptor: &GPUComputePipelineDescriptor, + ) -> Rc { + todo!() + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpudevice-createrenderpipelineasync + fn CreateRenderPipelineAsync(&self, _descriptor: &GPURenderPipelineDescriptor) -> Rc { + todo!() + } +} + +impl Drop for GPUDevice { + // not sure about this but this is non failable version of destroy + fn drop(&mut self) { + self.Destroy() + } +} + +fn convert_blend_component(blend_component: &GPUBlendComponent) -> wgt::BlendComponent { + wgt::BlendComponent { + src_factor: convert_blend_factor(&blend_component.srcFactor), + dst_factor: convert_blend_factor(&blend_component.dstFactor), + operation: match blend_component.operation { + GPUBlendOperation::Add => wgt::BlendOperation::Add, + GPUBlendOperation::Subtract => wgt::BlendOperation::Subtract, + GPUBlendOperation::Reverse_subtract => wgt::BlendOperation::ReverseSubtract, + GPUBlendOperation::Min => wgt::BlendOperation::Min, + GPUBlendOperation::Max => wgt::BlendOperation::Max, + }, + } +} + +fn convert_primitive_state(primitive_state: &GPUPrimitiveState) -> wgt::PrimitiveState { + wgt::PrimitiveState { + topology: convert_primitive_topology(&primitive_state.topology), + strip_index_format: primitive_state.stripIndexFormat.map( + |index_format| match index_format { + GPUIndexFormat::Uint16 => wgt::IndexFormat::Uint16, + GPUIndexFormat::Uint32 => wgt::IndexFormat::Uint32, + }, + ), + front_face: match primitive_state.frontFace { + GPUFrontFace::Ccw => wgt::FrontFace::Ccw, + GPUFrontFace::Cw => wgt::FrontFace::Cw, + }, + cull_mode: match primitive_state.cullMode { + GPUCullMode::None => None, + GPUCullMode::Front => Some(wgt::Face::Front), + GPUCullMode::Back => Some(wgt::Face::Back), + }, + unclipped_depth: primitive_state.clampDepth, + ..Default::default() + } +} + +fn convert_primitive_topology(primitive_topology: &GPUPrimitiveTopology) -> wgt::PrimitiveTopology { + match primitive_topology { + GPUPrimitiveTopology::Point_list => wgt::PrimitiveTopology::PointList, + GPUPrimitiveTopology::Line_list => wgt::PrimitiveTopology::LineList, + GPUPrimitiveTopology::Line_strip => wgt::PrimitiveTopology::LineStrip, + GPUPrimitiveTopology::Triangle_list => wgt::PrimitiveTopology::TriangleList, + GPUPrimitiveTopology::Triangle_strip => wgt::PrimitiveTopology::TriangleStrip, + } +} + +fn convert_view_dimension(view_dimension: GPUTextureViewDimension) -> wgt::TextureViewDimension { + match view_dimension { + GPUTextureViewDimension::_1d => wgt::TextureViewDimension::D1, + GPUTextureViewDimension::_2d => wgt::TextureViewDimension::D2, + GPUTextureViewDimension::_2d_array => wgt::TextureViewDimension::D2Array, + GPUTextureViewDimension::Cube => wgt::TextureViewDimension::Cube, + GPUTextureViewDimension::Cube_array => wgt::TextureViewDimension::CubeArray, + GPUTextureViewDimension::_3d => wgt::TextureViewDimension::D3, + } } fn convert_address_mode(address_mode: GPUAddressMode) -> wgt::AddressMode { @@ -1179,35 +1262,21 @@ fn convert_compare_function(compare: GPUCompareFunction) -> wgt::CompareFunction } } -fn convert_blend_descriptor(desc: &GPUBlendDescriptor) -> wgt::BlendDescriptor { - wgt::BlendDescriptor { - src_factor: convert_blend_factor(desc.srcFactor), - dst_factor: convert_blend_factor(desc.dstFactor), - operation: match desc.operation { - GPUBlendOperation::Add => wgt::BlendOperation::Add, - GPUBlendOperation::Subtract => wgt::BlendOperation::Subtract, - GPUBlendOperation::Reverse_subtract => wgt::BlendOperation::ReverseSubtract, - GPUBlendOperation::Min => wgt::BlendOperation::Min, - GPUBlendOperation::Max => wgt::BlendOperation::Max, - }, - } -} - -fn convert_blend_factor(factor: GPUBlendFactor) -> wgt::BlendFactor { +fn convert_blend_factor(factor: &GPUBlendFactor) -> wgt::BlendFactor { match factor { GPUBlendFactor::Zero => wgt::BlendFactor::Zero, GPUBlendFactor::One => wgt::BlendFactor::One, - GPUBlendFactor::Src_color => wgt::BlendFactor::SrcColor, - GPUBlendFactor::One_minus_src_color => wgt::BlendFactor::OneMinusSrcColor, + GPUBlendFactor::Src => wgt::BlendFactor::Src, + GPUBlendFactor::One_minus_src => wgt::BlendFactor::OneMinusSrc, GPUBlendFactor::Src_alpha => wgt::BlendFactor::SrcAlpha, GPUBlendFactor::One_minus_src_alpha => wgt::BlendFactor::OneMinusSrcAlpha, - GPUBlendFactor::Dst_color => wgt::BlendFactor::DstColor, - GPUBlendFactor::One_minus_dst_color => wgt::BlendFactor::OneMinusDstColor, + GPUBlendFactor::Dst => wgt::BlendFactor::Dst, + GPUBlendFactor::One_minus_dst => wgt::BlendFactor::OneMinusDst, GPUBlendFactor::Dst_alpha => wgt::BlendFactor::DstAlpha, GPUBlendFactor::One_minus_dst_alpha => wgt::BlendFactor::OneMinusDstAlpha, GPUBlendFactor::Src_alpha_saturated => wgt::BlendFactor::SrcAlphaSaturated, - GPUBlendFactor::Blend_color => wgt::BlendFactor::BlendColor, - GPUBlendFactor::One_minus_blend_color => wgt::BlendFactor::OneMinusBlendColor, + GPUBlendFactor::Constant => wgt::BlendFactor::Constant, + GPUBlendFactor::One_minus_constant => wgt::BlendFactor::OneMinusConstant, } } @@ -1226,36 +1295,36 @@ fn convert_stencil_op(operation: GPUStencilOperation) -> wgt::StencilOperation { fn convert_vertex_format(format: GPUVertexFormat) -> wgt::VertexFormat { match format { - GPUVertexFormat::Uchar2 => wgt::VertexFormat::Uchar2, - GPUVertexFormat::Uchar4 => wgt::VertexFormat::Uchar4, - GPUVertexFormat::Char2 => wgt::VertexFormat::Char2, - GPUVertexFormat::Char4 => wgt::VertexFormat::Char4, - GPUVertexFormat::Uchar2norm => wgt::VertexFormat::Uchar2Norm, - GPUVertexFormat::Uchar4norm => wgt::VertexFormat::Uchar4Norm, - GPUVertexFormat::Char2norm => wgt::VertexFormat::Char2Norm, - GPUVertexFormat::Char4norm => wgt::VertexFormat::Char4Norm, - GPUVertexFormat::Ushort2 => wgt::VertexFormat::Ushort2, - GPUVertexFormat::Ushort4 => wgt::VertexFormat::Ushort4, - GPUVertexFormat::Short2 => wgt::VertexFormat::Short2, - GPUVertexFormat::Short4 => wgt::VertexFormat::Short4, - GPUVertexFormat::Ushort2norm => wgt::VertexFormat::Ushort2Norm, - GPUVertexFormat::Ushort4norm => wgt::VertexFormat::Ushort4Norm, - GPUVertexFormat::Short2norm => wgt::VertexFormat::Short2Norm, - GPUVertexFormat::Short4norm => wgt::VertexFormat::Short4Norm, - GPUVertexFormat::Half2 => wgt::VertexFormat::Half2, - GPUVertexFormat::Half4 => wgt::VertexFormat::Half4, - GPUVertexFormat::Float => wgt::VertexFormat::Float, - GPUVertexFormat::Float2 => wgt::VertexFormat::Float2, - GPUVertexFormat::Float3 => wgt::VertexFormat::Float3, - GPUVertexFormat::Float4 => wgt::VertexFormat::Float4, - GPUVertexFormat::Uint => wgt::VertexFormat::Uint, - GPUVertexFormat::Uint2 => wgt::VertexFormat::Uint2, - GPUVertexFormat::Uint3 => wgt::VertexFormat::Uint3, - GPUVertexFormat::Uint4 => wgt::VertexFormat::Uint4, - GPUVertexFormat::Int => wgt::VertexFormat::Int, - GPUVertexFormat::Int2 => wgt::VertexFormat::Int2, - GPUVertexFormat::Int3 => wgt::VertexFormat::Int3, - GPUVertexFormat::Int4 => wgt::VertexFormat::Int4, + GPUVertexFormat::Uint8x2 => wgt::VertexFormat::Uint8x2, + GPUVertexFormat::Uint8x4 => wgt::VertexFormat::Uint8x4, + GPUVertexFormat::Sint8x2 => wgt::VertexFormat::Sint8x2, + GPUVertexFormat::Sint8x4 => wgt::VertexFormat::Sint8x4, + GPUVertexFormat::Unorm8x2 => wgt::VertexFormat::Unorm8x2, + GPUVertexFormat::Unorm8x4 => wgt::VertexFormat::Unorm8x4, + GPUVertexFormat::Snorm8x2 => wgt::VertexFormat::Unorm8x2, + GPUVertexFormat::Snorm8x4 => wgt::VertexFormat::Unorm8x4, + GPUVertexFormat::Uint16x2 => wgt::VertexFormat::Uint16x2, + GPUVertexFormat::Uint16x4 => wgt::VertexFormat::Uint16x4, + GPUVertexFormat::Sint16x2 => wgt::VertexFormat::Sint16x2, + GPUVertexFormat::Sint16x4 => wgt::VertexFormat::Sint16x4, + GPUVertexFormat::Unorm16x2 => wgt::VertexFormat::Unorm16x2, + GPUVertexFormat::Unorm16x4 => wgt::VertexFormat::Unorm16x4, + GPUVertexFormat::Snorm16x2 => wgt::VertexFormat::Snorm16x2, + GPUVertexFormat::Snorm16x4 => wgt::VertexFormat::Snorm16x4, + GPUVertexFormat::Float16x2 => wgt::VertexFormat::Float16x2, + GPUVertexFormat::Float16x4 => wgt::VertexFormat::Float16x4, + GPUVertexFormat::Float32 => wgt::VertexFormat::Float32, + GPUVertexFormat::Float32x2 => wgt::VertexFormat::Float32x2, + GPUVertexFormat::Float32x3 => wgt::VertexFormat::Float32x3, + GPUVertexFormat::Float32x4 => wgt::VertexFormat::Float32x4, + GPUVertexFormat::Uint32 => wgt::VertexFormat::Uint32, + GPUVertexFormat::Uint32x2 => wgt::VertexFormat::Uint32x2, + GPUVertexFormat::Uint32x3 => wgt::VertexFormat::Uint32x3, + GPUVertexFormat::Uint32x4 => wgt::VertexFormat::Uint32x4, + GPUVertexFormat::Sint32 => wgt::VertexFormat::Sint32, + GPUVertexFormat::Sint32x2 => wgt::VertexFormat::Sint32x2, + GPUVertexFormat::Sint32x3 => wgt::VertexFormat::Sint32x3, + GPUVertexFormat::Sint32x4 => wgt::VertexFormat::Sint32x4, } } @@ -1311,21 +1380,8 @@ pub fn convert_texture_format(format: GPUTextureFormat) -> wgt::TextureFormat { GPUTextureFormat::Bc6h_rgb_ufloat => wgt::TextureFormat::Bc6hRgbUfloat, GPUTextureFormat::Bc7_rgba_unorm => wgt::TextureFormat::Bc7RgbaUnorm, GPUTextureFormat::Bc7_rgba_unorm_srgb => wgt::TextureFormat::Bc7RgbaUnormSrgb, - } -} - -fn convert_texture_component_type( - ty: Option, -) -> wgt::TextureComponentType { - if let Some(c) = ty { - match c { - GPUTextureComponentType::Float => wgt::TextureComponentType::Float, - GPUTextureComponentType::Sint => wgt::TextureComponentType::Sint, - GPUTextureComponentType::Uint => wgt::TextureComponentType::Uint, - GPUTextureComponentType::Depth_comparison => wgt::TextureComponentType::DepthComparison, - } - } else { - wgt::TextureComponentType::Float + GPUTextureFormat::Rg11b10float => wgt::TextureFormat::Rg11b10Float, + GPUTextureFormat::Bc6h_rgb_float => wgt::TextureFormat::Bc6hRgbFloat, } } @@ -1347,7 +1403,7 @@ pub fn convert_texture_size_to_dict(size: &GPUExtent3D) -> GPUExtent3DDict { GPUExtent3D::GPUExtent3DDict(ref dict) => GPUExtent3DDict { width: dict.width, height: dict.height, - depth: dict.depth, + depthOrArrayLayers: dict.depthOrArrayLayers, }, GPUExtent3D::RangeEnforcedUnsignedLongSequence(ref v) => { let mut w = v.clone(); @@ -1355,7 +1411,7 @@ pub fn convert_texture_size_to_dict(size: &GPUExtent3D) -> GPUExtent3DDict { GPUExtent3DDict { width: w[0], height: w[1], - depth: w[2], + depthOrArrayLayers: w[2], } }, } @@ -1365,7 +1421,7 @@ pub fn convert_texture_size_to_wgt(size: &GPUExtent3DDict) -> wgt::Extent3d { wgt::Extent3d { width: size.width, height: size.height, - depth: size.depth, + depth_or_array_layers: size.depthOrArrayLayers, } } diff --git a/components/script/dom/gpudevicelostinfo.rs b/components/script/dom/gpudevicelostinfo.rs index f054cbce8cd..40915bd1ebd 100644 --- a/components/script/dom/gpudevicelostinfo.rs +++ b/components/script/dom/gpudevicelostinfo.rs @@ -11,22 +11,33 @@ use crate::dom::bindings::str::DOMString; use crate::dom::globalscope::GlobalScope; use dom_struct::dom_struct; +use super::bindings::codegen::Bindings::GPUDeviceLostInfoBinding::GPUDeviceLostReason; + #[dom_struct] pub struct GPUDeviceLostInfo { reflector_: Reflector, message: DOMString, + reason: GPUDeviceLostReason, } impl GPUDeviceLostInfo { - fn new_inherited(message: DOMString) -> Self { + fn new_inherited(message: DOMString, reason: GPUDeviceLostReason) -> Self { Self { reflector_: Reflector::new(), message, + reason, } } - pub fn new(global: &GlobalScope, message: DOMString) -> DomRoot { - reflect_dom_object(Box::new(GPUDeviceLostInfo::new_inherited(message)), global) + pub fn new( + global: &GlobalScope, + message: DOMString, + reason: GPUDeviceLostReason, + ) -> DomRoot { + reflect_dom_object( + Box::new(GPUDeviceLostInfo::new_inherited(message, reason)), + global, + ) } } @@ -35,4 +46,9 @@ impl GPUDeviceLostInfoMethods for GPUDeviceLostInfo { fn Message(&self) -> DOMString { self.message.clone() } + + /// https://gpuweb.github.io/gpuweb/#dom-gpudevicelostinfo-reason + fn Reason(&self) -> GPUDeviceLostReason { + self.reason + } } diff --git a/components/script/dom/gpupipelinelayout.rs b/components/script/dom/gpupipelinelayout.rs index 4a28fcf4a6c..8f8fc550151 100644 --- a/components/script/dom/gpupipelinelayout.rs +++ b/components/script/dom/gpupipelinelayout.rs @@ -14,7 +14,7 @@ use webgpu::{WebGPUBindGroupLayout, WebGPUPipelineLayout}; #[dom_struct] pub struct GPUPipelineLayout { reflector_: Reflector, - label: DomRefCell>, + label: DomRefCell, #[no_trace] pipeline_layout: WebGPUPipelineLayout, #[no_trace] @@ -24,7 +24,7 @@ pub struct GPUPipelineLayout { impl GPUPipelineLayout { fn new_inherited( pipeline_layout: WebGPUPipelineLayout, - label: Option, + label: USVString, bgls: Vec, ) -> Self { Self { @@ -38,7 +38,7 @@ impl GPUPipelineLayout { pub fn new( global: &GlobalScope, pipeline_layout: WebGPUPipelineLayout, - label: Option, + label: USVString, bgls: Vec, ) -> DomRoot { reflect_dom_object( @@ -64,12 +64,12 @@ impl GPUPipelineLayout { impl GPUPipelineLayoutMethods for GPUPipelineLayout { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } } diff --git a/components/script/dom/gpuqueryset.rs b/components/script/dom/gpuqueryset.rs new file mode 100644 index 00000000000..097d23ac5ea --- /dev/null +++ b/components/script/dom/gpuqueryset.rs @@ -0,0 +1,35 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +#![allow(dead_code)] // this file is stub + +use crate::dom::bindings::reflector::Reflector; +use dom_struct::dom_struct; + +use super::bindings::codegen::Bindings::GPUQuerySetBinding::GPUQuerySetMethods; +use super::bindings::str::USVString; + +#[dom_struct] +pub struct GPUQuerySet { + reflector_: Reflector, + // #[ignore_malloc_size_of = "defined in wgpu-types"] +} + +// TODO: wgpu does not expose right fields right now +impl GPUQuerySetMethods for GPUQuerySet { + /// https://gpuweb.github.io/gpuweb/#dom-gpuqueryset-destroy + fn Destroy(&self) { + todo!() + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label + fn Label(&self) -> USVString { + todo!() + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label + fn SetLabel(&self, _value: USVString) { + todo!() + } +} diff --git a/components/script/dom/gpuqueue.rs b/components/script/dom/gpuqueue.rs index e2a9e99b90b..04dee0821eb 100644 --- a/components/script/dom/gpuqueue.rs +++ b/components/script/dom/gpuqueue.rs @@ -4,9 +4,6 @@ use crate::dom::bindings::cell::DomRefCell; use crate::dom::bindings::codegen::Bindings::GPUBufferBinding::GPUSize64; -use crate::dom::bindings::codegen::Bindings::GPUCommandEncoderBinding::{ - GPUTextureCopyView, GPUTextureDataLayout, -}; use crate::dom::bindings::codegen::Bindings::GPUQueueBinding::GPUQueueMethods; use crate::dom::bindings::codegen::Bindings::GPUTextureBinding::GPUExtent3D; use crate::dom::bindings::codegen::UnionTypes::ArrayBufferViewOrArrayBuffer as BufferSource; @@ -17,12 +14,16 @@ use crate::dom::bindings::str::USVString; use crate::dom::globalscope::GlobalScope; use crate::dom::gpubuffer::{GPUBuffer, GPUBufferState}; use crate::dom::gpucommandbuffer::GPUCommandBuffer; -use crate::dom::gpucommandencoder::{convert_texture_cv, convert_texture_data_layout}; +use crate::dom::gpucommandencoder::{convert_ic_texture, convert_image_data_layout}; use crate::dom::gpudevice::{convert_texture_size_to_dict, convert_texture_size_to_wgt, GPUDevice}; use dom_struct::dom_struct; use ipc_channel::ipc::IpcSharedMemory; use webgpu::{identity::WebGPUOpResult, wgt, WebGPU, WebGPUQueue, WebGPURequest}; +use super::bindings::codegen::Bindings::GPUCommandEncoderBinding::{ + GPUImageCopyTexture, GPUImageDataLayout, +}; + #[dom_struct] pub struct GPUQueue { reflector_: Reflector, @@ -30,7 +31,7 @@ pub struct GPUQueue { #[no_trace] channel: WebGPU, device: DomRefCell>>, - label: DomRefCell>, + label: DomRefCell, #[no_trace] queue: WebGPUQueue, } @@ -41,7 +42,7 @@ impl GPUQueue { channel, reflector_: Reflector::new(), device: DomRefCell::new(None), - label: DomRefCell::new(None), + label: DomRefCell::new(USVString::default()), queue, } } @@ -59,12 +60,12 @@ impl GPUQueue { impl GPUQueueMethods for GPUQueue { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } @@ -149,9 +150,9 @@ impl GPUQueueMethods for GPUQueue { /// https://gpuweb.github.io/gpuweb/#dom-gpuqueue-writetexture fn WriteTexture( &self, - destination: &GPUTextureCopyView, + destination: &GPUImageCopyTexture, data: BufferSource, - data_layout: &GPUTextureDataLayout, + data_layout: &GPUImageDataLayout, size: GPUExtent3D, ) -> Fallible<()> { let (bytes, len) = match data { @@ -164,8 +165,8 @@ impl GPUQueueMethods for GPUQueue { return Err(Error::Operation); } - let texture_cv = convert_texture_cv(destination); - let texture_layout = convert_texture_data_layout(data_layout); + let texture_cv = convert_ic_texture(destination); + let texture_layout = convert_image_data_layout(data_layout); let write_size = convert_texture_size_to_wgt(&convert_texture_size_to_dict(&size)); let final_data = IpcSharedMemory::from_bytes(&bytes); diff --git a/components/script/dom/gpurenderbundle.rs b/components/script/dom/gpurenderbundle.rs index c39559ed62c..2b1a742f60e 100644 --- a/components/script/dom/gpurenderbundle.rs +++ b/components/script/dom/gpurenderbundle.rs @@ -21,7 +21,7 @@ pub struct GPURenderBundle { device: WebGPUDevice, #[no_trace] render_bundle: WebGPURenderBundle, - label: DomRefCell>, + label: DomRefCell, } impl GPURenderBundle { @@ -29,7 +29,7 @@ impl GPURenderBundle { render_bundle: WebGPURenderBundle, device: WebGPUDevice, channel: WebGPU, - label: Option, + label: USVString, ) -> Self { Self { reflector_: Reflector::new(), @@ -45,7 +45,7 @@ impl GPURenderBundle { render_bundle: WebGPURenderBundle, device: WebGPUDevice, channel: WebGPU, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPURenderBundle::new_inherited( @@ -67,12 +67,12 @@ impl GPURenderBundle { impl GPURenderBundleMethods for GPURenderBundle { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } } diff --git a/components/script/dom/gpurenderbundleencoder.rs b/components/script/dom/gpurenderbundleencoder.rs index b261af6d857..0303a9c76c7 100644 --- a/components/script/dom/gpurenderbundleencoder.rs +++ b/components/script/dom/gpurenderbundleencoder.rs @@ -20,6 +20,8 @@ use webgpu::{ wgt, WebGPU, WebGPURenderBundle, WebGPURequest, }; +use super::bindings::codegen::Bindings::GPURenderPipelineBinding::GPUIndexFormat; + #[dom_struct] pub struct GPURenderBundleEncoder { reflector_: Reflector, @@ -30,7 +32,7 @@ pub struct GPURenderBundleEncoder { #[ignore_malloc_size_of = "defined in wgpu-core"] #[no_trace] render_bundle_encoder: DomRefCell>, - label: DomRefCell>, + label: DomRefCell, } impl GPURenderBundleEncoder { @@ -38,7 +40,7 @@ impl GPURenderBundleEncoder { render_bundle_encoder: RenderBundleEncoder, device: &GPUDevice, channel: WebGPU, - label: Option, + label: USVString, ) -> Self { Self { reflector_: Reflector::new(), @@ -54,7 +56,7 @@ impl GPURenderBundleEncoder { render_bundle_encoder: RenderBundleEncoder, device: &GPUDevice, channel: WebGPU, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPURenderBundleEncoder::new_inherited( @@ -70,12 +72,12 @@ impl GPURenderBundleEncoder { impl GPURenderBundleEncoderMethods for GPURenderBundleEncoder { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } @@ -103,11 +105,21 @@ impl GPURenderBundleEncoderMethods for GPURenderBundleEncoder { } /// https://gpuweb.github.io/gpuweb/#dom-gpurenderencoderbase-setindexbuffer - fn SetIndexBuffer(&self, buffer: &GPUBuffer, offset: u64, size: u64) { + fn SetIndexBuffer( + &self, + buffer: &GPUBuffer, + index_format: GPUIndexFormat, + offset: u64, + size: u64, + ) { if let Some(encoder) = self.render_bundle_encoder.borrow_mut().as_mut() { wgpu_bundle::wgpu_render_bundle_set_index_buffer( encoder, buffer.id().0, + match index_format { + GPUIndexFormat::Uint16 => wgt::IndexFormat::Uint16, + GPUIndexFormat::Uint32 => wgt::IndexFormat::Uint32, + }, offset, wgt::BufferSize::new(size), ); @@ -175,7 +187,7 @@ impl GPURenderBundleEncoderMethods for GPURenderBundleEncoder { /// https://gpuweb.github.io/gpuweb/#dom-gpurenderencoderbase-drawindexedindirect fn DrawIndexedIndirect(&self, indirect_buffer: &GPUBuffer, indirect_offset: u64) { if let Some(encoder) = self.render_bundle_encoder.borrow_mut().as_mut() { - wgpu_bundle::wgpu_render_pass_bundle_indexed_indirect( + wgpu_bundle::wgpu_render_bundle_draw_indexed_indirect( encoder, indirect_buffer.id().0, indirect_offset, @@ -214,7 +226,7 @@ impl GPURenderBundleEncoderMethods for GPURenderBundleEncoder { render_bundle, self.device.id(), self.channel.clone(), - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.label.clone().unwrap_or_default(), ) } } diff --git a/components/script/dom/gpurenderpassencoder.rs b/components/script/dom/gpurenderpassencoder.rs index 0bcbda00b23..2a1f3d371ea 100644 --- a/components/script/dom/gpurenderpassencoder.rs +++ b/components/script/dom/gpurenderpassencoder.rs @@ -21,13 +21,16 @@ use webgpu::{ wgt, WebGPU, WebGPURequest, }; +use super::bindings::codegen::Bindings::GPURenderPipelineBinding::GPUIndexFormat; +use super::bindings::error::Fallible; + #[dom_struct] pub struct GPURenderPassEncoder { reflector_: Reflector, #[ignore_malloc_size_of = "defined in webgpu"] #[no_trace] channel: WebGPU, - label: DomRefCell>, + label: DomRefCell, #[ignore_malloc_size_of = "defined in wgpu-core"] #[no_trace] render_pass: DomRefCell>, @@ -39,7 +42,7 @@ impl GPURenderPassEncoder { channel: WebGPU, render_pass: Option, parent: &GPUCommandEncoder, - label: Option, + label: USVString, ) -> Self { Self { channel, @@ -55,7 +58,7 @@ impl GPURenderPassEncoder { channel: WebGPU, render_pass: Option, parent: &GPUCommandEncoder, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPURenderPassEncoder::new_inherited( @@ -71,12 +74,12 @@ impl GPURenderPassEncoder { impl GPURenderPassEncoderMethods for GPURenderPassEncoder { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } @@ -127,7 +130,7 @@ impl GPURenderPassEncoderMethods for GPURenderPassEncoder { } /// https://gpuweb.github.io/gpuweb/#dom-gpurenderpassencoder-setblendcolor - fn SetBlendColor(&self, color: GPUColor) { + fn SetBlendConstant(&self, color: GPUColor) { if let Some(render_pass) = self.render_pass.borrow_mut().as_mut() { let colors = match color { GPUColor::GPUColorDict(d) => wgt::Color { @@ -149,7 +152,7 @@ impl GPURenderPassEncoderMethods for GPURenderPassEncoder { } }, }; - wgpu_render::wgpu_render_pass_set_blend_color(render_pass, &colors); + wgpu_render::wgpu_render_pass_set_blend_constant(render_pass, &colors); } } @@ -160,8 +163,8 @@ impl GPURenderPassEncoderMethods for GPURenderPassEncoder { } } - /// https://gpuweb.github.io/gpuweb/#dom-gpurenderpassencoder-endpass - fn EndPass(&self) { + /// https://gpuweb.github.io/gpuweb/#dom-gpurenderpassencoder-end + fn End(&self) -> Fallible<()> { let render_pass = self.render_pass.borrow_mut().take(); self.channel .0 @@ -178,6 +181,7 @@ impl GPURenderPassEncoderMethods for GPURenderPassEncoder { GPUCommandEncoderState::Open, GPUCommandEncoderState::EncodingRenderPass, ); + Ok(()) } /// https://gpuweb.github.io/gpuweb/#dom-gpurenderencoderbase-setpipeline @@ -187,12 +191,22 @@ impl GPURenderPassEncoderMethods for GPURenderPassEncoder { } } - /// https://gpuweb.github.io/gpuweb/#dom-gpurenderencoderbase-setindexbuffer - fn SetIndexBuffer(&self, buffer: &GPUBuffer, offset: u64, size: u64) { + /// https://gpuweb.github.io/gpuweb/#dom-gpurendercommandsmixin-setindexbuffer + fn SetIndexBuffer( + &self, + buffer: &GPUBuffer, + index_format: GPUIndexFormat, + offset: u64, + size: u64, + ) { if let Some(render_pass) = self.render_pass.borrow_mut().as_mut() { wgpu_render::wgpu_render_pass_set_index_buffer( render_pass, buffer.id().0, + match index_format { + GPUIndexFormat::Uint16 => wgt::IndexFormat::Uint16, + GPUIndexFormat::Uint32 => wgt::IndexFormat::Uint32, + }, offset, wgt::BufferSize::new(size), ); diff --git a/components/script/dom/gpurenderpipeline.rs b/components/script/dom/gpurenderpipeline.rs index 76bbd76330e..c52ab141206 100644 --- a/components/script/dom/gpurenderpipeline.rs +++ b/components/script/dom/gpurenderpipeline.rs @@ -18,7 +18,7 @@ use webgpu::{WebGPUBindGroupLayout, WebGPURenderPipeline}; #[dom_struct] pub struct GPURenderPipeline { reflector_: Reflector, - label: DomRefCell>, + label: DomRefCell, #[no_trace] render_pipeline: WebGPURenderPipeline, #[no_trace] @@ -29,7 +29,7 @@ pub struct GPURenderPipeline { impl GPURenderPipeline { fn new_inherited( render_pipeline: WebGPURenderPipeline, - label: Option, + label: USVString, bgls: Vec, device: &GPUDevice, ) -> Self { @@ -45,7 +45,7 @@ impl GPURenderPipeline { pub fn new( global: &GlobalScope, render_pipeline: WebGPURenderPipeline, - label: Option, + label: USVString, bgls: Vec, device: &GPUDevice, ) -> DomRoot { @@ -69,12 +69,12 @@ impl GPURenderPipeline { impl GPURenderPipelineMethods for GPURenderPipeline { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } @@ -86,7 +86,7 @@ impl GPURenderPipelineMethods for GPURenderPipeline { Ok(GPUBindGroupLayout::new( &self.global(), self.bind_group_layouts[index as usize], - None, + USVString::default(), )) } } diff --git a/components/script/dom/gpusampler.rs b/components/script/dom/gpusampler.rs index 473ac28c3b7..9574be119bf 100644 --- a/components/script/dom/gpusampler.rs +++ b/components/script/dom/gpusampler.rs @@ -14,7 +14,7 @@ use webgpu::{WebGPUDevice, WebGPUSampler}; #[dom_struct] pub struct GPUSampler { reflector_: Reflector, - label: DomRefCell>, + label: DomRefCell, #[no_trace] device: WebGPUDevice, compare_enable: bool, @@ -27,7 +27,7 @@ impl GPUSampler { device: WebGPUDevice, compare_enable: bool, sampler: WebGPUSampler, - label: Option, + label: USVString, ) -> Self { Self { reflector_: Reflector::new(), @@ -43,7 +43,7 @@ impl GPUSampler { device: WebGPUDevice, compare_enable: bool, sampler: WebGPUSampler, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPUSampler::new_inherited( @@ -65,12 +65,12 @@ impl GPUSampler { impl GPUSamplerMethods for GPUSampler { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } } diff --git a/components/script/dom/gpushadermodule.rs b/components/script/dom/gpushadermodule.rs index 5eff0c9cbb3..05621688d16 100644 --- a/components/script/dom/gpushadermodule.rs +++ b/components/script/dom/gpushadermodule.rs @@ -2,6 +2,8 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ +use std::rc::Rc; + use crate::dom::bindings::cell::DomRefCell; use crate::dom::bindings::codegen::Bindings::GPUShaderModuleBinding::GPUShaderModuleMethods; use crate::dom::bindings::reflector::{reflect_dom_object, Reflector}; @@ -11,16 +13,19 @@ use crate::dom::globalscope::GlobalScope; use dom_struct::dom_struct; use webgpu::WebGPUShaderModule; +use super::bindings::error::Fallible; +use super::promise::Promise; + #[dom_struct] pub struct GPUShaderModule { reflector_: Reflector, - label: DomRefCell>, + label: DomRefCell, #[no_trace] shader_module: WebGPUShaderModule, } impl GPUShaderModule { - fn new_inherited(shader_module: WebGPUShaderModule, label: Option) -> Self { + fn new_inherited(shader_module: WebGPUShaderModule, label: USVString) -> Self { Self { reflector_: Reflector::new(), label: DomRefCell::new(label), @@ -31,7 +36,7 @@ impl GPUShaderModule { pub fn new( global: &GlobalScope, shader_module: WebGPUShaderModule, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPUShaderModule::new_inherited(shader_module, label)), @@ -48,12 +53,17 @@ impl GPUShaderModule { impl GPUShaderModuleMethods for GPUShaderModule { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } + + /// https://gpuweb.github.io/gpuweb/#dom-gpushadermodule-getcompilationinfo + fn CompilationInfo(&self) -> Fallible> { + todo!() + } } diff --git a/components/script/dom/gpusupportedlimits.rs b/components/script/dom/gpusupportedlimits.rs new file mode 100644 index 00000000000..72d36cb3c2d --- /dev/null +++ b/components/script/dom/gpusupportedlimits.rs @@ -0,0 +1,165 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +use super::bindings::codegen::Bindings::GPUSupportedLimitsBinding::GPUSupportedLimitsBinding; +use super::bindings::reflector::reflect_dom_object; +use super::bindings::root::DomRoot; +use crate::dom::bindings::reflector::Reflector; +use crate::dom::globalscope::GlobalScope; +use dom_struct::dom_struct; +use webgpu::wgt::Limits; +use GPUSupportedLimitsBinding::GPUSupportedLimitsMethods; + +#[dom_struct] +pub struct GPUSupportedLimits { + reflector_: Reflector, + #[ignore_malloc_size_of = "defined in wgpu-types"] + #[no_trace] + limits: Limits, +} + +impl GPUSupportedLimits { + fn new_inherited(limits: Limits) -> Self { + Self { + reflector_: Reflector::new(), + limits, + } + } + + pub fn new(global: &GlobalScope, limits: Limits) -> DomRoot { + reflect_dom_object(Box::new(Self::new_inherited(limits)), global) + } +} + +impl GPUSupportedLimitsMethods for GPUSupportedLimits { + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxtexturedimension1d + fn MaxTextureDimension1D(&self) -> u32 { + self.limits.max_texture_dimension_1d + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxtexturedimension2d + fn MaxTextureDimension2D(&self) -> u32 { + self.limits.max_texture_dimension_2d + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxtexturedimension3d + fn MaxTextureDimension3D(&self) -> u32 { + self.limits.max_texture_dimension_3d + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxtexturearraylayers + fn MaxTextureArrayLayers(&self) -> u32 { + self.limits.max_texture_array_layers + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxbindgroups + fn MaxBindGroups(&self) -> u32 { + self.limits.max_bind_groups + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxdynamicuniformbuffersperpipelinelayout + fn MaxDynamicUniformBuffersPerPipelineLayout(&self) -> u32 { + self.limits.max_dynamic_uniform_buffers_per_pipeline_layout + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxdynamicstoragebuffersperpipelinelayout + fn MaxDynamicStorageBuffersPerPipelineLayout(&self) -> u32 { + self.limits.max_dynamic_storage_buffers_per_pipeline_layout + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxsampledtexturespershaderstage + fn MaxSampledTexturesPerShaderStage(&self) -> u32 { + self.limits.max_sampled_textures_per_shader_stage + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxsamplerspershaderstage + fn MaxSamplersPerShaderStage(&self) -> u32 { + self.limits.max_samplers_per_shader_stage + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxstoragebufferspershaderstage + fn MaxStorageBuffersPerShaderStage(&self) -> u32 { + self.limits.max_storage_buffers_per_shader_stage + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxstoragetexturespershaderstage + fn MaxStorageTexturesPerShaderStage(&self) -> u32 { + self.limits.max_storage_textures_per_shader_stage + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxuniformbufferspershaderstage + fn MaxUniformBuffersPerShaderStage(&self) -> u32 { + self.limits.max_uniform_buffers_per_shader_stage + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxuniformbufferbindingsize + fn MaxUniformBufferBindingSize(&self) -> u32 { + self.limits.max_uniform_buffer_binding_size + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxstoragebufferbindingsize + fn MaxStorageBufferBindingSize(&self) -> u32 { + self.limits.max_storage_buffer_binding_size + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-minuniformbufferoffsetalignment + fn MinUniformBufferOffsetAlignment(&self) -> u32 { + self.limits.min_uniform_buffer_offset_alignment + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-minstoragebufferoffsetalignment + fn MinStorageBufferOffsetAlignment(&self) -> u32 { + self.limits.min_storage_buffer_offset_alignment + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxvertexbuffers + fn MaxVertexBuffers(&self) -> u32 { + self.limits.max_vertex_buffers + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxvertexattributes + fn MaxVertexAttributes(&self) -> u32 { + self.limits.max_vertex_attributes + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxvertexbufferarraystride + fn MaxVertexBufferArrayStride(&self) -> u32 { + self.limits.max_vertex_buffer_array_stride + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxinterstageshadercomponents + fn MaxInterStageShaderComponents(&self) -> u32 { + self.limits.max_inter_stage_shader_components + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxcomputeworkgroupstoragesize + fn MaxComputeWorkgroupStorageSize(&self) -> u32 { + self.limits.max_compute_workgroup_storage_size + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxcomputeinvocationsperworkgroup + fn MaxComputeInvocationsPerWorkgroup(&self) -> u32 { + self.limits.max_compute_invocations_per_workgroup + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxcomputeworkgroupsizex + fn MaxComputeWorkgroupSizeX(&self) -> u32 { + self.limits.max_compute_workgroup_size_x + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxcomputeworkgroupsizey + fn MaxComputeWorkgroupSizeY(&self) -> u32 { + self.limits.max_compute_workgroup_size_y + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxcomputeworkgroupsizez + fn MaxComputeWorkgroupSizeZ(&self) -> u32 { + self.limits.max_compute_workgroup_size_z + } + + /// https://gpuweb.github.io/gpuweb/#dom-gpusupportedlimits-maxcomputeworkgroupsperdimension + fn MaxComputeWorkgroupsPerDimension(&self) -> u32 { + self.limits.max_compute_workgroups_per_dimension + } +} diff --git a/components/script/dom/gpuswapchain.rs b/components/script/dom/gpuswapchain.rs deleted file mode 100644 index 18a5fe29696..00000000000 --- a/components/script/dom/gpuswapchain.rs +++ /dev/null @@ -1,97 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ - -use crate::dom::bindings::cell::DomRefCell; -use crate::dom::bindings::codegen::Bindings::GPUSwapChainBinding::GPUSwapChainMethods; -use crate::dom::bindings::reflector::{reflect_dom_object, Reflector}; -use crate::dom::bindings::root::{Dom, DomRoot}; -use crate::dom::bindings::str::USVString; -use crate::dom::globalscope::GlobalScope; -use crate::dom::gpucanvascontext::GPUCanvasContext; -use crate::dom::gputexture::GPUTexture; -use dom_struct::dom_struct; -use webgpu::{WebGPU, WebGPURequest, WebGPUTexture}; -use webrender_api::ImageKey; - -#[dom_struct] -pub struct GPUSwapChain { - reflector_: Reflector, - #[ignore_malloc_size_of = "channels are hard"] - #[no_trace] - channel: WebGPU, - label: DomRefCell>, - context: Dom, - texture: Dom, -} - -impl GPUSwapChain { - fn new_inherited( - channel: WebGPU, - context: &GPUCanvasContext, - texture: &GPUTexture, - label: Option, - ) -> Self { - Self { - reflector_: Reflector::new(), - channel, - context: Dom::from_ref(context), - texture: Dom::from_ref(texture), - label: DomRefCell::new(label), - } - } - - pub fn new( - global: &GlobalScope, - channel: WebGPU, - context: &GPUCanvasContext, - texture: &GPUTexture, - label: Option, - ) -> DomRoot { - reflect_dom_object( - Box::new(GPUSwapChain::new_inherited( - channel, context, texture, label, - )), - global, - ) - } -} - -impl GPUSwapChain { - pub fn destroy(&self, external_id: u64, image_key: ImageKey) { - if let Err(e) = self.channel.0.send(( - None, - WebGPURequest::DestroySwapChain { - external_id, - image_key, - }, - )) { - warn!( - "Failed to send DestroySwapChain-ImageKey({:?}) ({})", - image_key, e - ); - } - } - - pub fn texture_id(&self) -> WebGPUTexture { - self.texture.id() - } -} - -impl GPUSwapChainMethods for GPUSwapChain { - /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { - self.label.borrow().clone() - } - - /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { - *self.label.borrow_mut() = value; - } - - /// https://gpuweb.github.io/gpuweb/#dom-gpuswapchain-getcurrenttexture - fn GetCurrentTexture(&self) -> DomRoot { - self.context.mark_as_dirty(); - DomRoot::from_ref(&*self.texture) - } -} diff --git a/components/script/dom/gputexture.rs b/components/script/dom/gputexture.rs index 6f27f4cbc6d..23f944dd2b1 100644 --- a/components/script/dom/gputexture.rs +++ b/components/script/dom/gputexture.rs @@ -19,7 +19,6 @@ use crate::dom::gpudevice::{ use crate::dom::gputextureview::GPUTextureView; use dom_struct::dom_struct; use std::cell::Cell; -use std::num::NonZeroU32; use std::string::String; use webgpu::{ identity::WebGPUOpResult, wgpu::resource, wgt, WebGPU, WebGPURequest, WebGPUTexture, @@ -31,7 +30,7 @@ pub struct GPUTexture { reflector_: Reflector, #[no_trace] texture: WebGPUTexture, - label: DomRefCell>, + label: DomRefCell, device: Dom, #[ignore_malloc_size_of = "channels are hard"] #[no_trace] @@ -57,7 +56,7 @@ impl GPUTexture { dimension: GPUTextureDimension, format: GPUTextureFormat, texture_usage: u32, - label: Option, + label: USVString, ) -> Self { Self { reflector_: Reflector::new(), @@ -86,7 +85,7 @@ impl GPUTexture { dimension: GPUTextureDimension, format: GPUTextureFormat, texture_usage: u32, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPUTexture::new_inherited( @@ -120,46 +119,37 @@ impl GPUTexture { impl GPUTextureMethods for GPUTexture { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } /// https://gpuweb.github.io/gpuweb/#dom-gputexture-createview fn CreateView(&self, descriptor: &GPUTextureViewDescriptor) -> DomRoot { let scope_id = self.device.use_current_scope(); - let mut valid = true; - let level_count = descriptor.mipLevelCount.and_then(|count| { - if count == 0 { - valid = false; - } - NonZeroU32::new(count) - }); - let array_layer_count = descriptor.arrayLayerCount.and_then(|count| { - if count == 0 { - valid = false; - } - NonZeroU32::new(count) - }); - let desc = if valid { + let desc = if !matches!(descriptor.mipLevelCount, Some(0)) && + !matches!(descriptor.arrayLayerCount, Some(0)) + { Some(resource::TextureViewDescriptor { label: convert_label(&descriptor.parent), format: descriptor.format.map(convert_texture_format), dimension: descriptor.dimension.map(convert_texture_view_dimension), - aspect: match descriptor.aspect { - GPUTextureAspect::All => wgt::TextureAspect::All, - GPUTextureAspect::Stencil_only => wgt::TextureAspect::StencilOnly, - GPUTextureAspect::Depth_only => wgt::TextureAspect::DepthOnly, + range: wgt::ImageSubresourceRange { + aspect: match descriptor.aspect { + GPUTextureAspect::All => wgt::TextureAspect::All, + GPUTextureAspect::Stencil_only => wgt::TextureAspect::StencilOnly, + GPUTextureAspect::Depth_only => wgt::TextureAspect::DepthOnly, + }, + base_mip_level: descriptor.baseMipLevel, + mip_level_count: descriptor.mipLevelCount, + base_array_layer: descriptor.baseArrayLayer, + array_layer_count: descriptor.arrayLayerCount, }, - base_mip_level: descriptor.baseMipLevel, - level_count, - base_array_layer: descriptor.baseArrayLayer, - array_layer_count, }) } else { self.device.handle_server_msg( @@ -196,7 +186,7 @@ impl GPUTextureMethods for GPUTexture { &self.global(), texture_view, &self, - descriptor.parent.label.as_ref().cloned(), + descriptor.parent.label.clone().unwrap_or_default(), ) } diff --git a/components/script/dom/gputextureview.rs b/components/script/dom/gputextureview.rs index 1300079422f..a4b3b4e8f99 100644 --- a/components/script/dom/gputextureview.rs +++ b/components/script/dom/gputextureview.rs @@ -15,7 +15,7 @@ use webgpu::WebGPUTextureView; #[dom_struct] pub struct GPUTextureView { reflector_: Reflector, - label: DomRefCell>, + label: DomRefCell, #[no_trace] texture_view: WebGPUTextureView, texture: Dom, @@ -25,7 +25,7 @@ impl GPUTextureView { fn new_inherited( texture_view: WebGPUTextureView, texture: &GPUTexture, - label: Option, + label: USVString, ) -> GPUTextureView { Self { reflector_: Reflector::new(), @@ -39,7 +39,7 @@ impl GPUTextureView { global: &GlobalScope, texture_view: WebGPUTextureView, texture: &GPUTexture, - label: Option, + label: USVString, ) -> DomRoot { reflect_dom_object( Box::new(GPUTextureView::new_inherited(texture_view, texture, label)), @@ -56,12 +56,12 @@ impl GPUTextureView { impl GPUTextureViewMethods for GPUTextureView { /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn GetLabel(&self) -> Option { + fn Label(&self) -> USVString { self.label.borrow().clone() } /// https://gpuweb.github.io/gpuweb/#dom-gpuobjectbase-label - fn SetLabel(&self, value: Option) { + fn SetLabel(&self, value: USVString) { *self.label.borrow_mut() = value; } } diff --git a/components/script/dom/gpuvalidationerror.rs b/components/script/dom/gpuvalidationerror.rs index 412b30f5862..4e139c85edb 100644 --- a/components/script/dom/gpuvalidationerror.rs +++ b/components/script/dom/gpuvalidationerror.rs @@ -10,6 +10,8 @@ use crate::dom::globalscope::GlobalScope; use dom_struct::dom_struct; use js::rust::HandleObject; +use super::bindings::error::Fallible; + #[dom_struct] pub struct GPUValidationError { reflector_: Reflector, @@ -46,8 +48,8 @@ impl GPUValidationError { global: &GlobalScope, proto: Option, message: DOMString, - ) -> DomRoot { - GPUValidationError::new_with_proto(global, proto, message) + ) -> Fallible> { + Ok(GPUValidationError::new_with_proto(global, proto, message)) } } diff --git a/components/script/dom/htmlcanvaselement.rs b/components/script/dom/htmlcanvaselement.rs index c56da9a0b66..c5d46f3f42c 100644 --- a/components/script/dom/htmlcanvaselement.rs +++ b/components/script/dom/htmlcanvaselement.rs @@ -269,9 +269,8 @@ impl HTMLCanvasElement { .script_to_constellation_chan() .send(ScriptMsg::GetWebGPUChan(sender)); let window = window_from_node(self); - let size = self.get_size(); let channel = receiver.recv().expect("Failed to get WebGPU channel"); - let context = GPUCanvasContext::new(window.upcast::(), self, size, channel); + let context = GPUCanvasContext::new(window.upcast::(), self, channel); *self.context.borrow_mut() = Some(CanvasContext::WebGPU(Dom::from_ref(&*context))); Some(context) } @@ -374,7 +373,7 @@ impl HTMLCanvasElementMethods for HTMLCanvasElement { "webgl2" | "experimental-webgl2" => self .get_or_init_webgl2_context(cx, options) .map(RenderingContext::WebGL2RenderingContext), - "gpupresent" => self + "webgpu" => self .get_or_init_webgpu_context() .map(RenderingContext::GPUCanvasContext), _ => None, diff --git a/components/script/dom/mod.rs b/components/script/dom/mod.rs index eacf23d5b4e..95d1821b87a 100644 --- a/components/script/dom/mod.rs +++ b/components/script/dom/mod.rs @@ -321,6 +321,7 @@ pub mod gamepadpose; pub mod globalscope; pub mod gpu; pub mod gpuadapter; +pub mod gpuadapterinfo; pub mod gpubindgroup; pub mod gpubindgrouplayout; pub mod gpubuffer; @@ -329,6 +330,8 @@ pub mod gpucanvascontext; pub mod gpucolorwrite; pub mod gpucommandbuffer; pub mod gpucommandencoder; +pub mod gpucompilationinfo; +pub mod gpucompilationmessage; pub mod gpucomputepassencoder; pub mod gpucomputepipeline; pub mod gpudevice; @@ -336,6 +339,7 @@ pub mod gpudevicelostinfo; pub mod gpumapmode; pub mod gpuoutofmemoryerror; pub mod gpupipelinelayout; +pub mod gpuqueryset; pub mod gpuqueue; pub mod gpurenderbundle; pub mod gpurenderbundleencoder; @@ -344,7 +348,7 @@ pub mod gpurenderpipeline; pub mod gpusampler; pub mod gpushadermodule; pub mod gpushaderstage; -pub mod gpuswapchain; +pub mod gpusupportedlimits; pub mod gputexture; pub mod gputextureusage; pub mod gputextureview; diff --git a/components/script/dom/webidls/GPU.webidl b/components/script/dom/webidls/GPU.webidl index e0e6eb57b27..f35966f4b3d 100644 --- a/components/script/dom/webidls/GPU.webidl +++ b/components/script/dom/webidls/GPU.webidl @@ -5,15 +5,16 @@ // https://gpuweb.github.io/gpuweb/#gpu-interface [Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] interface GPU { + [NewObject] Promise requestAdapter(optional GPURequestAdapterOptions options = {}); + GPUTextureFormat getPreferredCanvasFormat(); }; -// https://gpuweb.github.io/gpuweb/#dictdef-gpurequestadapteroptions dictionary GPURequestAdapterOptions { GPUPowerPreference powerPreference; + boolean forceFallbackAdapter = false; }; -// https://gpuweb.github.io/gpuweb/#enumdef-gpupowerpreference enum GPUPowerPreference { "low-power", "high-performance" diff --git a/components/script/dom/webidls/GPUAdapter.webidl b/components/script/dom/webidls/GPUAdapter.webidl index e4e4e86791c..b03d85edd1a 100644 --- a/components/script/dom/webidls/GPUAdapter.webidl +++ b/components/script/dom/webidls/GPUAdapter.webidl @@ -5,35 +5,29 @@ // https://gpuweb.github.io/gpuweb/#gpuadapter [Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] interface GPUAdapter { - readonly attribute DOMString name; - readonly attribute object extensions; - //readonly attribute GPULimits limits; Don’t expose higher limits for now. + //[SameObject] readonly attribute GPUSupportedFeatures features; + [SameObject] readonly attribute GPUSupportedLimits limits; + readonly attribute boolean isFallbackAdapter; - Promise requestDevice(optional GPUDeviceDescriptor descriptor = {}); + [NewObject] + Promise requestDevice(optional GPUDeviceDescriptor descriptor = {}); + [NewObject] + Promise requestAdapterInfo(optional sequence unmaskHints = []); }; -dictionary GPUDeviceDescriptor : GPUObjectDescriptorBase { - sequence extensions = []; - GPULimits limits = {}; +dictionary GPUDeviceDescriptor { + sequence requiredFeatures = []; + record requiredLimits; }; -enum GPUExtensionName { - "depth-clamping", +enum GPUFeatureName { + "depth-clip-control", "depth24unorm-stencil8", "depth32float-stencil8", "pipeline-statistics-query", "texture-compression-bc", + "texture-compression-etc2", + "texture-compression-astc", "timestamp-query", -}; - -dictionary GPULimits { - GPUSize32 maxBindGroups = 4; - GPUSize32 maxDynamicUniformBuffersPerPipelineLayout = 8; - GPUSize32 maxDynamicStorageBuffersPerPipelineLayout = 4; - GPUSize32 maxSampledTexturesPerShaderStage = 16; - GPUSize32 maxSamplersPerShaderStage = 16; - GPUSize32 maxStorageBuffersPerShaderStage = 4; - GPUSize32 maxStorageTexturesPerShaderStage = 4; - GPUSize32 maxUniformBuffersPerShaderStage = 12; - GPUSize32 maxUniformBufferBindingSize = 16384; + "indirect-first-instance", }; diff --git a/components/script/dom/webidls/GPUAdapterInfo.webidl b/components/script/dom/webidls/GPUAdapterInfo.webidl new file mode 100644 index 00000000000..7ddc34866e0 --- /dev/null +++ b/components/script/dom/webidls/GPUAdapterInfo.webidl @@ -0,0 +1,12 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +// https://gpuweb.github.io/gpuweb/#gpuadapterinfo +[Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] +interface GPUAdapterInfo { + readonly attribute DOMString vendor; + readonly attribute DOMString architecture; + readonly attribute DOMString device; + readonly attribute DOMString description; +}; diff --git a/components/script/dom/webidls/GPUBindGroup.webidl b/components/script/dom/webidls/GPUBindGroup.webidl index 7bfa023acba..4c83e6460ed 100644 --- a/components/script/dom/webidls/GPUBindGroup.webidl +++ b/components/script/dom/webidls/GPUBindGroup.webidl @@ -13,16 +13,14 @@ dictionary GPUBindGroupDescriptor : GPUObjectDescriptorBase { required sequence entries; }; -typedef (GPUSampler or GPUTextureView or GPUBufferBindings) GPUBindingResource; +typedef (GPUSampler or GPUTextureView or GPUBufferBinding) GPUBindingResource; dictionary GPUBindGroupEntry { required GPUIndex32 binding; required GPUBindingResource resource; }; -// Note: Servo codegen doesn't like the name `GPUBufferBinding` because it's already occupied -// dictionary GPUBufferBinding { -dictionary GPUBufferBindings { +dictionary GPUBufferBinding { required GPUBuffer buffer; GPUSize64 offset = 0; GPUSize64 size; diff --git a/components/script/dom/webidls/GPUBindGroupLayout.webidl b/components/script/dom/webidls/GPUBindGroupLayout.webidl index 5fc58139b14..91ce4702417 100644 --- a/components/script/dom/webidls/GPUBindGroupLayout.webidl +++ b/components/script/dom/webidls/GPUBindGroupLayout.webidl @@ -15,22 +15,54 @@ dictionary GPUBindGroupLayoutDescriptor : GPUObjectDescriptorBase { dictionary GPUBindGroupLayoutEntry { required GPUIndex32 binding; required GPUShaderStageFlags visibility; - required GPUBindingType type; - boolean hasDynamicOffset; - GPUSize64 minBufferBindingSize; - GPUTextureViewDimension viewDimension; - GPUTextureComponentType textureComponentType; - GPUTextureFormat storageTextureFormat; + GPUBufferBindingLayout buffer; + GPUSamplerBindingLayout sampler; + GPUTextureBindingLayout texture; + GPUStorageTextureBindingLayout storageTexture; }; -enum GPUBindingType { - "uniform-buffer", - "storage-buffer", - "readonly-storage-buffer", - "sampler", - "comparison-sampler", - "sampled-texture", - "multisampled-texture", - "readonly-storage-texture", - "writeonly-storage-texture" +enum GPUBufferBindingType { + "uniform", + "storage", + "read-only-storage", +}; + +dictionary GPUBufferBindingLayout { + GPUBufferBindingType type = "uniform"; + boolean hasDynamicOffset = false; + GPUSize64 minBindingSize = 0; +}; + +enum GPUSamplerBindingType { + "filtering", + "non-filtering", + "comparison", +}; + +dictionary GPUSamplerBindingLayout { + GPUSamplerBindingType type = "filtering"; +}; + +enum GPUTextureSampleType { + "float", + "unfilterable-float", + "depth", + "sint", + "uint", +}; + +dictionary GPUTextureBindingLayout { + GPUTextureSampleType sampleType = "float"; + GPUTextureViewDimension viewDimension = "2d"; + boolean multisampled = false; +}; + +enum GPUStorageTextureAccess { + "write-only", +}; + +dictionary GPUStorageTextureBindingLayout { + GPUStorageTextureAccess access = "write-only"; + required GPUTextureFormat format; + GPUTextureViewDimension viewDimension = "2d"; }; diff --git a/components/script/dom/webidls/GPUBuffer.webidl b/components/script/dom/webidls/GPUBuffer.webidl index 819ebb27bab..8cc7f652e80 100644 --- a/components/script/dom/webidls/GPUBuffer.webidl +++ b/components/script/dom/webidls/GPUBuffer.webidl @@ -5,10 +5,13 @@ // https://gpuweb.github.io/gpuweb/#gpubuffer [Exposed=(Window, DedicatedWorker), Serializable, Pref="dom.webgpu.enabled"] interface GPUBuffer { + [NewObject] Promise mapAsync(GPUMapModeFlags mode, optional GPUSize64 offset = 0, optional GPUSize64 size); - [Throws] ArrayBuffer getMappedRange(optional GPUSize64 offset = 0, optional GPUSize64 size); + [NewObject, Throws] + ArrayBuffer getMappedRange(optional GPUSize64 offset = 0, optional GPUSize64 size); + [Throws] undefined unmap(); - + [Throws] undefined destroy(); }; GPUBuffer includes GPUObjectBase; @@ -19,4 +22,4 @@ dictionary GPUBufferDescriptor : GPUObjectDescriptorBase { boolean mappedAtCreation = false; }; -typedef unsigned long long GPUSize64; +typedef [EnforceRange] unsigned long long GPUSize64; diff --git a/components/script/dom/webidls/GPUBufferUsage.webidl b/components/script/dom/webidls/GPUBufferUsage.webidl index 6db1d029f18..78330c9bf17 100644 --- a/components/script/dom/webidls/GPUBufferUsage.webidl +++ b/components/script/dom/webidls/GPUBufferUsage.webidl @@ -16,5 +16,4 @@ interface GPUBufferUsage { const GPUBufferUsageFlags INDIRECT = 0x0100; const GPUBufferUsageFlags QUERY_RESOLVE = 0x0200; }; - typedef [EnforceRange] unsigned long GPUBufferUsageFlags; diff --git a/components/script/dom/webidls/GPUCanvasContext.webidl b/components/script/dom/webidls/GPUCanvasContext.webidl index 5e19f1467e6..4395f176c9e 100644 --- a/components/script/dom/webidls/GPUCanvasContext.webidl +++ b/components/script/dom/webidls/GPUCanvasContext.webidl @@ -5,13 +5,27 @@ // https://gpuweb.github.io/gpuweb/#gpucanvascontext [Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] interface GPUCanvasContext { - GPUSwapChain configureSwapChain(GPUSwapChainDescriptor descriptor); + readonly attribute (HTMLCanvasElement or OffscreenCanvas) canvas; - //Promise getSwapChainPreferredFormat(GPUDevice device); + // Calling configure() a second time invalidates the previous one, + // and all of the textures it's produced. + undefined configure(GPUCanvasConfiguration descriptor); + undefined unconfigure(); + + [Throws] + GPUTexture getCurrentTexture(); }; -dictionary GPUSwapChainDescriptor : GPUObjectDescriptorBase { +enum GPUCanvasAlphaMode { + "opaque", + "premultiplied", +}; + +dictionary GPUCanvasConfiguration { required GPUDevice device; required GPUTextureFormat format; - GPUTextureUsageFlags usage = 0x10; // GPUTextureUsage.OUTPUT_ATTACHMENT + GPUTextureUsageFlags usage = 0x10; // GPUTextureUsage.RENDER_ATTACHMENT + sequence viewFormats = []; + // PredefinedColorSpace colorSpace = "srgb"; // TODO + GPUCanvasAlphaMode alphaMode = "opaque"; }; diff --git a/components/script/dom/webidls/GPUColorWrite.webidl b/components/script/dom/webidls/GPUColorWrite.webidl index e4a74fe5f6a..d667580fbf3 100644 --- a/components/script/dom/webidls/GPUColorWrite.webidl +++ b/components/script/dom/webidls/GPUColorWrite.webidl @@ -2,7 +2,7 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -// https://gpuweb.github.io/gpuweb/#gpucolorwrite +// https://gpuweb.github.io/gpuweb/#namespacedef-gpucolorwrite [Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] interface GPUColorWrite { const GPUColorWriteFlags RED = 0x1; diff --git a/components/script/dom/webidls/GPUCommandBuffer.webidl b/components/script/dom/webidls/GPUCommandBuffer.webidl index 7fca9a908ac..38186438afb 100644 --- a/components/script/dom/webidls/GPUCommandBuffer.webidl +++ b/components/script/dom/webidls/GPUCommandBuffer.webidl @@ -5,6 +5,8 @@ // https://gpuweb.github.io/gpuweb/#gpucommandbuffer [Exposed=(Window, DedicatedWorker), Serializable, Pref="dom.webgpu.enabled"] interface GPUCommandBuffer { - //readonly attribute Promise executionTime; }; GPUCommandBuffer includes GPUObjectBase; + +dictionary GPUCommandBufferDescriptor : GPUObjectDescriptorBase { +}; diff --git a/components/script/dom/webidls/GPUCommandEncoder.webidl b/components/script/dom/webidls/GPUCommandEncoder.webidl index a9395778c80..2e63fced636 100644 --- a/components/script/dom/webidls/GPUCommandEncoder.webidl +++ b/components/script/dom/webidls/GPUCommandEncoder.webidl @@ -5,8 +5,10 @@ // https://gpuweb.github.io/gpuweb/#gpucommandencoder [Exposed=(Window, DedicatedWorker), Serializable, Pref="dom.webgpu.enabled"] interface GPUCommandEncoder { - GPURenderPassEncoder beginRenderPass(GPURenderPassDescriptor descriptor); + [NewObject] GPUComputePassEncoder beginComputePass(optional GPUComputePassDescriptor descriptor = {}); + [NewObject] + GPURenderPassEncoder beginRenderPass(GPURenderPassDescriptor descriptor); undefined copyBufferToBuffer( GPUBuffer source, @@ -16,78 +18,117 @@ interface GPUCommandEncoder { GPUSize64 size); undefined copyBufferToTexture( - GPUBufferCopyView source, - GPUTextureCopyView destination, + GPUImageCopyBuffer source, + GPUImageCopyTexture destination, GPUExtent3D copySize); undefined copyTextureToBuffer( - GPUTextureCopyView source, - GPUBufferCopyView destination, + GPUImageCopyTexture source, + GPUImageCopyBuffer destination, GPUExtent3D copySize); undefined copyTextureToTexture( - GPUTextureCopyView source, - GPUTextureCopyView destination, + GPUImageCopyTexture source, + GPUImageCopyTexture destination, GPUExtent3D copySize); - //void pushDebugGroup(USVString groupLabel); - //void popDebugGroup(); - //void insertDebugMarker(USVString markerLabel); + /* + undefined copyImageBitmapToTexture( + GPUImageBitmapCopyView source, + GPUImageCopyTexture destination, + GPUExtent3D copySize); + */ - //void writeTimestamp(GPUQuerySet querySet, GPUSize32 queryIndex); - - //void resolveQuerySet( - // GPUQuerySet querySet, - // GPUSize32 firstQuery, - // GPUSize32 queryCount, - // GPUBuffer destination, - // GPUSize64 destinationOffset); + //undefined pushDebugGroup(USVString groupLabel); + //undefined popDebugGroup(); + //undefined insertDebugMarker(USVString markerLabel); + [NewObject] GPUCommandBuffer finish(optional GPUCommandBufferDescriptor descriptor = {}); }; GPUCommandEncoder includes GPUObjectBase; +dictionary GPUImageDataLayout { + GPUSize64 offset = 0; + GPUSize32 bytesPerRow; + GPUSize32 rowsPerImage; +}; + +dictionary GPUImageCopyBuffer : GPUImageDataLayout { + required GPUBuffer buffer; +}; + +dictionary GPUImageCopyExternalImage { + required (ImageBitmap or HTMLCanvasElement or OffscreenCanvas) source; + GPUOrigin2D origin = {}; + boolean flipY = false; +}; + +dictionary GPUImageCopyTexture { + required GPUTexture texture; + GPUIntegerCoordinate mipLevel = 0; + GPUOrigin3D origin; + GPUTextureAspect aspect = "all"; +}; + +dictionary GPUImageCopyTextureTagged : GPUImageCopyTexture { + //GPUPredefinedColorSpace colorSpace = "srgb"; //TODO + boolean premultipliedAlpha = false; +}; + +dictionary GPUImageBitmapCopyView { + //required ImageBitmap imageBitmap; //TODO + GPUOrigin2D origin; +}; + dictionary GPUComputePassDescriptor : GPUObjectDescriptorBase { }; -dictionary GPUCommandBufferDescriptor : GPUObjectDescriptorBase { -}; - +// dictionary GPURenderPassDescriptor : GPUObjectDescriptorBase { - required sequence colorAttachments; - GPURenderPassDepthStencilAttachmentDescriptor depthStencilAttachment; - //GPUQuerySet occlusionQuerySet; + required sequence colorAttachments; + GPURenderPassDepthStencilAttachment depthStencilAttachment; + GPUQuerySet occlusionQuerySet; }; -dictionary GPURenderPassColorAttachmentDescriptor { - required GPUTextureView attachment; +dictionary GPURenderPassColorAttachment { + required GPUTextureView view; GPUTextureView resolveTarget; - required (GPULoadOp or GPUColor) loadValue; - GPUStoreOp storeOp = "store"; + GPUColor clearValue; + required GPULoadOp loadOp; + required GPUStoreOp storeOp; }; -dictionary GPURenderPassDepthStencilAttachmentDescriptor { - required GPUTextureView attachment; +dictionary GPURenderPassDepthStencilAttachment { + required GPUTextureView view; - required (GPULoadOp or float) depthLoadValue; - required GPUStoreOp depthStoreOp; + float depthClearValue; + GPULoadOp depthLoadOp; + GPUStoreOp depthStoreOp; boolean depthReadOnly = false; - required GPUStencilLoadValue stencilLoadValue; - required GPUStoreOp stencilStoreOp; + GPUStencilValue stencilClearValue = 0; + GPULoadOp stencilLoadOp; + GPUStoreOp stencilStoreOp; boolean stencilReadOnly = false; }; -typedef (GPULoadOp or GPUStencilValue) GPUStencilLoadValue; - enum GPULoadOp { - "load" + "load", + "clear" }; enum GPUStoreOp { "store", - "clear" + "discard" +}; + +dictionary GPURenderPassLayout: GPUObjectDescriptorBase { + // TODO: We don't support nullable enumerated arguments yet + required sequence colorFormats; + GPUTextureFormat depthStencilFormat; + GPUSize32 sampleCount = 1; }; dictionary GPUColorDict { @@ -98,21 +139,11 @@ dictionary GPUColorDict { }; typedef (sequence or GPUColorDict) GPUColor; -dictionary GPUTextureDataLayout { - GPUSize64 offset = 0; - required GPUSize32 bytesPerRow; - GPUSize32 rowsPerImage = 0; -}; - -dictionary GPUBufferCopyView : GPUTextureDataLayout { - required GPUBuffer buffer; -}; - -dictionary GPUTextureCopyView { - required GPUTexture texture; - GPUIntegerCoordinate mipLevel = 0; - GPUOrigin3D origin = {}; +dictionary GPUOrigin2DDict { + GPUIntegerCoordinate x = 0; + GPUIntegerCoordinate y = 0; }; +typedef (sequence or GPUOrigin2DDict) GPUOrigin2D; dictionary GPUOrigin3DDict { GPUIntegerCoordinate x = 0; diff --git a/components/script/dom/webidls/GPUCompilationInfo.webidl b/components/script/dom/webidls/GPUCompilationInfo.webidl new file mode 100644 index 00000000000..c5451db6f52 --- /dev/null +++ b/components/script/dom/webidls/GPUCompilationInfo.webidl @@ -0,0 +1,11 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +// https://gpuweb.github.io/gpuweb/#gpucompilationinfo +[Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] +interface GPUCompilationInfo { + // codegen hates it + //[Cached, Frozen, Pure] + readonly attribute /*sequence*/ any messages; +}; diff --git a/components/script/dom/webidls/GPUCompilationMessage.webidl b/components/script/dom/webidls/GPUCompilationMessage.webidl new file mode 100644 index 00000000000..29d55da1aad --- /dev/null +++ b/components/script/dom/webidls/GPUCompilationMessage.webidl @@ -0,0 +1,20 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +// https://gpuweb.github.io/gpuweb/#gpucompilationmessage +[Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] +interface GPUCompilationMessage { + readonly attribute DOMString message; + readonly attribute GPUCompilationMessageType type; + readonly attribute unsigned long long lineNum; + readonly attribute unsigned long long linePos; + readonly attribute unsigned long long offset; + readonly attribute unsigned long long length; +}; + +enum GPUCompilationMessageType { + "error", + "warning", + "info" +}; diff --git a/components/script/dom/webidls/GPUComputePassEncoder.webidl b/components/script/dom/webidls/GPUComputePassEncoder.webidl index 8fd3befe54b..41aea0a2371 100644 --- a/components/script/dom/webidls/GPUComputePassEncoder.webidl +++ b/components/script/dom/webidls/GPUComputePassEncoder.webidl @@ -6,15 +6,12 @@ [Exposed=(Window, DedicatedWorker), Serializable, Pref="dom.webgpu.enabled"] interface GPUComputePassEncoder { undefined setPipeline(GPUComputePipeline pipeline); - undefined dispatch(GPUSize32 x, optional GPUSize32 y = 1, optional GPUSize32 z = 1); - undefined dispatchIndirect(GPUBuffer indirectBuffer, GPUSize64 indirectOffset); + undefined dispatchWorkgroups(GPUSize32 x, optional GPUSize32 y = 1, optional GPUSize32 z = 1); + //[Pref="dom.webgpu.indirect-dispatch.enabled"] + undefined dispatchWorkgroupsIndirect(GPUBuffer indirectBuffer, GPUSize64 indirectOffset); - //void beginPipelineStatisticsQuery(GPUQuerySet querySet, GPUSize32 queryIndex); - //void endPipelineStatisticsQuery(); - - //void writeTimestamp(GPUQuerySet querySet, GPUSize32 queryIndex); - - undefined endPass(); + [Throws] + undefined end(); }; GPUComputePassEncoder includes GPUObjectBase; GPUComputePassEncoder includes GPUProgrammablePassEncoder; diff --git a/components/script/dom/webidls/GPUComputePipeline.webidl b/components/script/dom/webidls/GPUComputePipeline.webidl index a7599a13803..7e6f5da1b12 100644 --- a/components/script/dom/webidls/GPUComputePipeline.webidl +++ b/components/script/dom/webidls/GPUComputePipeline.webidl @@ -9,19 +9,23 @@ interface GPUComputePipeline { GPUComputePipeline includes GPUObjectBase; GPUComputePipeline includes GPUPipelineBase; -dictionary GPUPipelineDescriptorBase : GPUObjectDescriptorBase { - GPUPipelineLayout layout; +enum GPUAutoLayoutMode { + "auto" }; -dictionary GPUProgrammableStageDescriptor { - required GPUShaderModule module; - required DOMString entryPoint; +dictionary GPUPipelineDescriptorBase : GPUObjectDescriptorBase { + required (GPUPipelineLayout or GPUAutoLayoutMode) layout; }; dictionary GPUComputePipelineDescriptor : GPUPipelineDescriptorBase { - required GPUProgrammableStageDescriptor computeStage; + required GPUProgrammableStage compute; }; interface mixin GPUPipelineBase { [Throws] GPUBindGroupLayout getBindGroupLayout(unsigned long index); }; + +dictionary GPUProgrammableStage { + required GPUShaderModule module; + required USVString entryPoint; +}; diff --git a/components/script/dom/webidls/GPUDevice.webidl b/components/script/dom/webidls/GPUDevice.webidl index a82bea80ced..afbe581815e 100644 --- a/components/script/dom/webidls/GPUDevice.webidl +++ b/components/script/dom/webidls/GPUDevice.webidl @@ -4,15 +4,20 @@ // https://gpuweb.github.io/gpuweb/#gpudevice [Exposed=(Window, DedicatedWorker), /*Serializable,*/ Pref="dom.webgpu.enabled"] -interface GPUDevice : EventTarget { - [SameObject] readonly attribute GPUAdapter adapter; - readonly attribute object extensions; - readonly attribute object limits; +interface GPUDevice: EventTarget { + //[SameObject] readonly attribute GPUSupportedFeatures features; + [SameObject] readonly attribute GPUSupportedLimits limits; - [SameObject] readonly attribute GPUQueue defaultQueue; + // Overriding the name to avoid collision with `class Queue` in gcc + [SameObject, BinaryName="getQueue"] readonly attribute GPUQueue queue; + undefined destroy(); + + [NewObject, Throws] GPUBuffer createBuffer(GPUBufferDescriptor descriptor); + [NewObject] GPUTexture createTexture(GPUTextureDescriptor descriptor); + [NewObject] GPUSampler createSampler(optional GPUSamplerDescriptor descriptor = {}); GPUBindGroupLayout createBindGroupLayout(GPUBindGroupLayoutDescriptor descriptor); @@ -22,16 +27,22 @@ interface GPUDevice : EventTarget { GPUShaderModule createShaderModule(GPUShaderModuleDescriptor descriptor); GPUComputePipeline createComputePipeline(GPUComputePipelineDescriptor descriptor); GPURenderPipeline createRenderPipeline(GPURenderPipelineDescriptor descriptor); - //Promise createReadyComputePipeline(GPUComputePipelineDescriptor descriptor); - //Promise createReadyRenderPipeline(GPURenderPipelineDescriptor descriptor); + [NewObject] + Promise createComputePipelineAsync(GPUComputePipelineDescriptor descriptor); + [NewObject] + Promise createRenderPipelineAsync(GPURenderPipelineDescriptor descriptor); + + [NewObject] GPUCommandEncoder createCommandEncoder(optional GPUCommandEncoderDescriptor descriptor = {}); + [NewObject] GPURenderBundleEncoder createRenderBundleEncoder(GPURenderBundleEncoderDescriptor descriptor); - + //[NewObject] //GPUQuerySet createQuerySet(GPUQuerySetDescriptor descriptor); }; GPUDevice includes GPUObjectBase; +//TODO dictionary GPUCommandEncoderDescriptor : GPUObjectDescriptorBase { boolean measureExecutionTime = false; }; diff --git a/components/script/dom/webidls/GPUDeviceLostInfo.webidl b/components/script/dom/webidls/GPUDeviceLostInfo.webidl index cd9ec544408..de011768889 100644 --- a/components/script/dom/webidls/GPUDeviceLostInfo.webidl +++ b/components/script/dom/webidls/GPUDeviceLostInfo.webidl @@ -5,9 +5,16 @@ // https://gpuweb.github.io/gpuweb/#gpudevicelostinfo [Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] interface GPUDeviceLostInfo { + readonly attribute GPUDeviceLostReason reason; readonly attribute DOMString message; }; +enum GPUDeviceLostReason { + "unknown", + "destroyed", +}; + partial interface GPUDevice { + [Throws] readonly attribute Promise lost; }; diff --git a/components/script/dom/webidls/GPUMapMode.webidl b/components/script/dom/webidls/GPUMapMode.webidl index 0dc52c4b448..e99bde35237 100644 --- a/components/script/dom/webidls/GPUMapMode.webidl +++ b/components/script/dom/webidls/GPUMapMode.webidl @@ -2,7 +2,7 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -// https://gpuweb.github.io/gpuweb/#gpumapmode +// https://gpuweb.github.io/gpuweb/#namespacedef-gpumapmode [Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] interface GPUMapMode { const GPUMapModeFlags READ = 0x0001; diff --git a/components/script/dom/webidls/GPUObjectBase.webidl b/components/script/dom/webidls/GPUObjectBase.webidl index 524016d15ce..d977999f64f 100644 --- a/components/script/dom/webidls/GPUObjectBase.webidl +++ b/components/script/dom/webidls/GPUObjectBase.webidl @@ -5,7 +5,7 @@ // https://gpuweb.github.io/gpuweb/#gpuobjectbase [Exposed=(Window)] interface mixin GPUObjectBase { - attribute USVString? label; + attribute USVString label; }; dictionary GPUObjectDescriptorBase { diff --git a/components/script/dom/webidls/GPUProgrammablePassEncoder.webidl b/components/script/dom/webidls/GPUProgrammablePassEncoder.webidl index 0da804ed091..a7293fca7e8 100644 --- a/components/script/dom/webidls/GPUProgrammablePassEncoder.webidl +++ b/components/script/dom/webidls/GPUProgrammablePassEncoder.webidl @@ -6,16 +6,11 @@ [Exposed=(Window, DedicatedWorker)] interface mixin GPUProgrammablePassEncoder { undefined setBindGroup(GPUIndex32 index, GPUBindGroup bindGroup, - optional sequence dynamicOffsets = []); + optional sequence dynamicOffsets = []); - // void setBindGroup(GPUIndex32 index, GPUBindGroup bindGroup, - // Uint32Array dynamicOffsetsData, - // GPUSize64 dynamicOffsetsDataStart, - // GPUSize64 dynamicOffsetsDataLength); - - // void pushDebugGroup(DOMString groupLabel); - // void popDebugGroup(); - // void insertDebugMarker(DOMString markerLabel); + //undefined pushDebugGroup(USVString groupLabel); + //undefined popDebugGroup(); + //undefined insertDebugMarker(USVString markerLabel); }; typedef [EnforceRange] unsigned long GPUBufferDynamicOffset; diff --git a/components/script/dom/webidls/GPUQuerySet.webidl b/components/script/dom/webidls/GPUQuerySet.webidl new file mode 100644 index 00000000000..12275263c02 --- /dev/null +++ b/components/script/dom/webidls/GPUQuerySet.webidl @@ -0,0 +1,30 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +// https://gpuweb.github.io/gpuweb/#gpuqueryset +[Exposed=(Window, DedicatedWorker), Serializable, Pref="dom.webgpu.enabled"] +interface GPUQuerySet { + undefined destroy(); +}; +GPUQuerySet includes GPUObjectBase; + +dictionary GPUQuerySetDescriptor : GPUObjectDescriptorBase { + required GPUQueryType type; + required GPUSize32 count; + sequence pipelineStatistics = []; +}; + +enum GPUPipelineStatisticName { + "vertex-shader-invocations", + "clipper-invocations", + "clipper-primitives-out", + "fragment-shader-invocations", + "compute-shader-invocations" +}; + +enum GPUQueryType { + "occlusion", + "pipeline-statistics", + "timestamp" +}; diff --git a/components/script/dom/webidls/GPUQueue.webidl b/components/script/dom/webidls/GPUQueue.webidl index c6e7e66cb5d..1fa33cab309 100644 --- a/components/script/dom/webidls/GPUQueue.webidl +++ b/components/script/dom/webidls/GPUQueue.webidl @@ -5,27 +5,30 @@ // https://gpuweb.github.io/gpuweb/#gpuqueue [Exposed=(Window, DedicatedWorker), Serializable, Pref="dom.webgpu.enabled"] interface GPUQueue { - undefined submit(sequence commandBuffers); + undefined submit(sequence buffers); - //GPUFence createFence(optional GPUFenceDescriptor descriptor = {}); - //void signal(GPUFence fence, GPUFenceValue signalValue); + //TODO: + //Promise onSubmittedWorkDone(); - [Throws] undefined writeBuffer( + [Throws] + undefined writeBuffer( GPUBuffer buffer, GPUSize64 bufferOffset, - /*[AllowShared]*/ BufferSource data, + BufferSource data, optional GPUSize64 dataOffset = 0, optional GPUSize64 size); - [Throws] undefined writeTexture( - GPUTextureCopyView destination, - /*[AllowShared]*/ BufferSource data, - GPUTextureDataLayout dataLayout, + [Throws] + undefined writeTexture( + GPUImageCopyTexture destination, + BufferSource data, + GPUImageDataLayout dataLayout, GPUExtent3D size); - //void copyImageBitmapToTexture( - // GPUImageBitmapCopyView source, - // GPUTextureCopyView destination, - // GPUExtent3D copySize); + //[Throws] + //undefined copyExternalImageToTexture( + // GPUImageCopyExternalImage source, + // GPUImageCopyTextureTagged destination, + // GPUExtent3D copySize); }; GPUQueue includes GPUObjectBase; diff --git a/components/script/dom/webidls/GPURenderBundleEncoder.webidl b/components/script/dom/webidls/GPURenderBundleEncoder.webidl index 50676b431b9..cc65f37b818 100644 --- a/components/script/dom/webidls/GPURenderBundleEncoder.webidl +++ b/components/script/dom/webidls/GPURenderBundleEncoder.webidl @@ -11,8 +11,7 @@ GPURenderBundleEncoder includes GPUObjectBase; GPURenderBundleEncoder includes GPUProgrammablePassEncoder; GPURenderBundleEncoder includes GPURenderEncoderBase; -dictionary GPURenderBundleEncoderDescriptor : GPUObjectDescriptorBase { - required sequence colorFormats; - GPUTextureFormat depthStencilFormat; - GPUSize32 sampleCount = 1; +dictionary GPURenderBundleEncoderDescriptor : GPURenderPassLayout { + boolean depthReadOnly = false; + boolean stencilReadOnly = false; }; diff --git a/components/script/dom/webidls/GPURenderEncoderBase.webidl b/components/script/dom/webidls/GPURenderEncoderBase.webidl index 945d59d718a..f4bdc5609e5 100644 --- a/components/script/dom/webidls/GPURenderEncoderBase.webidl +++ b/components/script/dom/webidls/GPURenderEncoderBase.webidl @@ -2,27 +2,33 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -// https://gpuweb.github.io/gpuweb/#gpurenderencoderbase +// https://gpuweb.github.io/gpuweb/#gpurendercommandsmixin [Exposed=(Window, DedicatedWorker)] interface mixin GPURenderEncoderBase { undefined setPipeline(GPURenderPipeline pipeline); - undefined setIndexBuffer(GPUBuffer buffer, optional GPUSize64 offset = 0, optional GPUSize64 size = 0); - undefined setVertexBuffer( - GPUIndex32 slot, - GPUBuffer buffer, - optional GPUSize64 offset = 0, - optional GPUSize64 size = 0 - ); + undefined setIndexBuffer(GPUBuffer buffer, + GPUIndexFormat indexFormat, + optional GPUSize64 offset = 0, + optional GPUSize64 size = 0); + undefined setVertexBuffer(GPUIndex32 slot, + GPUBuffer buffer, + optional GPUSize64 offset = 0, + optional GPUSize64 size = 0); - undefined draw(GPUSize32 vertexCount, optional GPUSize32 instanceCount = 1, - optional GPUSize32 firstVertex = 0, optional GPUSize32 firstInstance = 0); - undefined drawIndexed(GPUSize32 indexCount, optional GPUSize32 instanceCount = 1, - optional GPUSize32 firstIndex = 0, - optional GPUSignedOffset32 baseVertex = 0, - optional GPUSize32 firstInstance = 0); + undefined draw(GPUSize32 vertexCount, + optional GPUSize32 instanceCount = 1, + optional GPUSize32 firstVertex = 0, + optional GPUSize32 firstInstance = 0); + undefined drawIndexed(GPUSize32 indexCount, + optional GPUSize32 instanceCount = 1, + optional GPUSize32 firstIndex = 0, + optional GPUSignedOffset32 baseVertex = 0, + optional GPUSize32 firstInstance = 0); + //[Pref="dom.webgpu.indirect-dispatch.enabled"] undefined drawIndirect(GPUBuffer indirectBuffer, GPUSize64 indirectOffset); + //[Pref="dom.webgpu.indirect-dispatch.enabled"] undefined drawIndexedIndirect(GPUBuffer indirectBuffer, GPUSize64 indirectOffset); }; diff --git a/components/script/dom/webidls/GPURenderPassEncoder.webidl b/components/script/dom/webidls/GPURenderPassEncoder.webidl index 65d3fdf7976..27764df5624 100644 --- a/components/script/dom/webidls/GPURenderPassEncoder.webidl +++ b/components/script/dom/webidls/GPURenderPassEncoder.webidl @@ -6,25 +6,27 @@ [Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] interface GPURenderPassEncoder { undefined setViewport(float x, float y, - float width, float height, - float minDepth, float maxDepth); + float width, float height, + float minDepth, float maxDepth); undefined setScissorRect(GPUIntegerCoordinate x, GPUIntegerCoordinate y, - GPUIntegerCoordinate width, GPUIntegerCoordinate height); + GPUIntegerCoordinate width, GPUIntegerCoordinate height); - undefined setBlendColor(GPUColor color); + undefined setBlendConstant(GPUColor color); undefined setStencilReference(GPUStencilValue reference); - //void beginOcclusionQuery(GPUSize32 queryIndex); - //void endOcclusionQuery(); + //undefined beginOcclusionQuery(GPUSize32 queryIndex); + //undefined endOcclusionQuery(); - //void beginPipelineStatisticsQuery(GPUQuerySet querySet, GPUSize32 queryIndex); - //void endPipelineStatisticsQuery(); + //undefined beginPipelineStatisticsQuery(GPUQuerySet querySet, GPUSize32 queryIndex); + //undefined endPipelineStatisticsQuery(); - //void writeTimestamp(GPUQuerySet querySet, GPUSize32 queryIndex); + //undefined writeTimestamp(GPUQuerySet querySet, GPUSize32 queryIndex); undefined executeBundles(sequence bundles); - undefined endPass(); + + [Throws] + undefined end(); }; GPURenderPassEncoder includes GPUObjectBase; GPURenderPassEncoder includes GPUProgrammablePassEncoder; diff --git a/components/script/dom/webidls/GPURenderPipeline.webidl b/components/script/dom/webidls/GPURenderPipeline.webidl index 7def381780a..1d654a4814e 100644 --- a/components/script/dom/webidls/GPURenderPipeline.webidl +++ b/components/script/dom/webidls/GPURenderPipeline.webidl @@ -10,21 +10,21 @@ GPURenderPipeline includes GPUObjectBase; GPURenderPipeline includes GPUPipelineBase; dictionary GPURenderPipelineDescriptor : GPUPipelineDescriptorBase { - required GPUProgrammableStageDescriptor vertexStage; - GPUProgrammableStageDescriptor fragmentStage; - - required GPUPrimitiveTopology primitiveTopology; - GPURasterizationStateDescriptor rasterizationState = {}; - required sequence colorStates; - GPUDepthStencilStateDescriptor depthStencilState; - GPUVertexStateDescriptor vertexState = {}; - - GPUSize32 sampleCount = 1; - GPUSampleMask sampleMask = 0xFFFFFFFF; - boolean alphaToCoverageEnabled = false; + required GPUVertexState vertex; + GPUPrimitiveState primitive = {}; + GPUDepthStencilState depthStencil; + GPUMultisampleState multisample = {}; + GPUFragmentState fragment; }; -typedef [EnforceRange] unsigned long GPUSampleMask; +dictionary GPUPrimitiveState { + GPUPrimitiveTopology topology = "triangle-list"; + GPUIndexFormat stripIndexFormat; + GPUFrontFace frontFace = "ccw"; + GPUCullMode cullMode = "none"; + // Enable depth clamping (requires "depth-clamping" feature) + boolean clampDepth = false; +}; enum GPUPrimitiveTopology { "point-list", @@ -34,19 +34,6 @@ enum GPUPrimitiveTopology { "triangle-strip" }; -typedef [EnforceRange] long GPUDepthBias; - -dictionary GPURasterizationStateDescriptor { - GPUFrontFace frontFace = "ccw"; - GPUCullMode cullMode = "none"; - // Enable depth clamping (requires "depth-clamping" extension) - boolean clampDepth = false; - - GPUDepthBias depthBias = 0; - float depthBiasSlopeScale = 0; - float depthBiasClamp = 0; -}; - enum GPUFrontFace { "ccw", "cw" @@ -58,15 +45,31 @@ enum GPUCullMode { "back" }; -dictionary GPUColorStateDescriptor { - required GPUTextureFormat format; +dictionary GPUMultisampleState { + GPUSize32 count = 1; + GPUSampleMask mask = 0xFFFFFFFF; + boolean alphaToCoverageEnabled = false; +}; - GPUBlendDescriptor alphaBlend = {}; - GPUBlendDescriptor colorBlend = {}; +dictionary GPUFragmentState: GPUProgrammableStage { + required sequence targets; +}; + +dictionary GPUColorTargetState { + required GPUTextureFormat format; + GPUBlendState blend; GPUColorWriteFlags writeMask = 0xF; // GPUColorWrite.ALL }; -dictionary GPUBlendDescriptor { +dictionary GPUBlendState { + required GPUBlendComponent color; + required GPUBlendComponent alpha; +}; + +typedef [EnforceRange] unsigned long GPUSampleMask; +typedef [EnforceRange] long GPUDepthBias; + +dictionary GPUBlendComponent { GPUBlendFactor srcFactor = "one"; GPUBlendFactor dstFactor = "zero"; GPUBlendOperation operation = "add"; @@ -75,17 +78,17 @@ dictionary GPUBlendDescriptor { enum GPUBlendFactor { "zero", "one", - "src-color", - "one-minus-src-color", + "src", + "one-minus-src", "src-alpha", "one-minus-src-alpha", - "dst-color", - "one-minus-dst-color", + "dst", + "one-minus-dst", "dst-alpha", "one-minus-dst-alpha", "src-alpha-saturated", - "blend-color", - "one-minus-blend-color" + "constant", + "one-minus-constant", }; enum GPUBlendOperation { @@ -96,6 +99,30 @@ enum GPUBlendOperation { "max" }; +dictionary GPUDepthStencilState { + required GPUTextureFormat format; + + boolean depthWriteEnabled = false; + GPUCompareFunction depthCompare = "always"; + + GPUStencilFaceState stencilFront = {}; + GPUStencilFaceState stencilBack = {}; + + GPUStencilValue stencilReadMask = 0xFFFFFFFF; + GPUStencilValue stencilWriteMask = 0xFFFFFFFF; + + GPUDepthBias depthBias = 0; + float depthBiasSlopeScale = 0; + float depthBiasClamp = 0; +}; + +dictionary GPUStencilFaceState { + GPUCompareFunction compare = "always"; + GPUStencilOperation failOp = "keep"; + GPUStencilOperation depthFailOp = "keep"; + GPUStencilOperation passOp = "keep"; +}; + enum GPUStencilOperation { "keep", "zero", @@ -107,85 +134,63 @@ enum GPUStencilOperation { "decrement-wrap" }; -typedef [EnforceRange] unsigned long GPUStencilValue; - -dictionary GPUDepthStencilStateDescriptor { - required GPUTextureFormat format; - - boolean depthWriteEnabled = false; - GPUCompareFunction depthCompare = "always"; - - GPUStencilStateFaceDescriptor stencilFront = {}; - GPUStencilStateFaceDescriptor stencilBack = {}; - - GPUStencilValue stencilReadMask = 0xFFFFFFFF; - GPUStencilValue stencilWriteMask = 0xFFFFFFFF; -}; - -dictionary GPUStencilStateFaceDescriptor { - GPUCompareFunction compare = "always"; - GPUStencilOperation failOp = "keep"; - GPUStencilOperation depthFailOp = "keep"; - GPUStencilOperation passOp = "keep"; -}; - enum GPUIndexFormat { "uint16", - "uint32" + "uint32", }; +typedef [EnforceRange] unsigned long GPUStencilValue; + enum GPUVertexFormat { - "uchar2", - "uchar4", - "char2", - "char4", - "uchar2norm", - "uchar4norm", - "char2norm", - "char4norm", - "ushort2", - "ushort4", - "short2", - "short4", - "ushort2norm", - "ushort4norm", - "short2norm", - "short4norm", - "half2", - "half4", - "float", - "float2", - "float3", - "float4", - "uint", - "uint2", - "uint3", - "uint4", - "int", - "int2", - "int3", - "int4" + "uint8x2", + "uint8x4", + "sint8x2", + "sint8x4", + "unorm8x2", + "unorm8x4", + "snorm8x2", + "snorm8x4", + "uint16x2", + "uint16x4", + "sint16x2", + "sint16x4", + "unorm16x2", + "unorm16x4", + "snorm16x2", + "snorm16x4", + "float16x2", + "float16x4", + "float32", + "float32x2", + "float32x3", + "float32x4", + "uint32", + "uint32x2", + "uint32x3", + "uint32x4", + "sint32", + "sint32x2", + "sint32x3", + "sint32x4", }; -enum GPUInputStepMode { +enum GPUVertexStepMode { "vertex", - "instance" + "instance", }; -dictionary GPUVertexStateDescriptor { - GPUIndexFormat indexFormat = "uint32"; - sequence vertexBuffers = []; +dictionary GPUVertexState: GPUProgrammableStage { + sequence buffers = []; }; -dictionary GPUVertexBufferLayoutDescriptor { +dictionary GPUVertexBufferLayout { required GPUSize64 arrayStride; - GPUInputStepMode stepMode = "vertex"; - required sequence attributes; + GPUVertexStepMode stepMode = "vertex"; + required sequence attributes; }; -dictionary GPUVertexAttributeDescriptor { +dictionary GPUVertexAttribute { required GPUVertexFormat format; required GPUSize64 offset; - required GPUIndex32 shaderLocation; }; diff --git a/components/script/dom/webidls/GPUSampler.webidl b/components/script/dom/webidls/GPUSampler.webidl index 539bc2695de..5220acc1f76 100644 --- a/components/script/dom/webidls/GPUSampler.webidl +++ b/components/script/dom/webidls/GPUSampler.webidl @@ -16,9 +16,9 @@ dictionary GPUSamplerDescriptor : GPUObjectDescriptorBase { GPUFilterMode minFilter = "nearest"; GPUFilterMode mipmapFilter = "nearest"; float lodMinClamp = 0; - float lodMaxClamp = 0xfffff; // TODO: What should this be? Was Number.MAX_VALUE. + float lodMaxClamp = 1000.0; // TODO: What should this be? GPUCompareFunction compare; - unsigned short maxAnisotropy = 1; + [Clamp] unsigned short maxAnisotropy = 1; }; enum GPUAddressMode { @@ -29,7 +29,7 @@ enum GPUAddressMode { enum GPUFilterMode { "nearest", - "linear" + "linear", }; enum GPUCompareFunction { diff --git a/components/script/dom/webidls/GPUShaderModule.webidl b/components/script/dom/webidls/GPUShaderModule.webidl index 0fdfc7c0327..8ce90180463 100644 --- a/components/script/dom/webidls/GPUShaderModule.webidl +++ b/components/script/dom/webidls/GPUShaderModule.webidl @@ -5,11 +5,13 @@ // https://gpuweb.github.io/gpuweb/#gpushadermodule [Exposed=(Window, DedicatedWorker), Serializable, Pref="dom.webgpu.enabled"] interface GPUShaderModule { + [Throws] + Promise compilationInfo(); }; GPUShaderModule includes GPUObjectBase; -typedef (Uint32Array or DOMString) GPUShaderCode; - dictionary GPUShaderModuleDescriptor : GPUObjectDescriptorBase { - required GPUShaderCode code; + // UTF8String is not observably different from USVString + required USVString code; + object sourceMap; }; diff --git a/components/script/dom/webidls/GPUShaderStage.webidl b/components/script/dom/webidls/GPUShaderStage.webidl index 27fcb550cc3..8ba66ef10bc 100644 --- a/components/script/dom/webidls/GPUShaderStage.webidl +++ b/components/script/dom/webidls/GPUShaderStage.webidl @@ -5,9 +5,9 @@ // https://gpuweb.github.io/gpuweb/#typedefdef-gpushaderstageflags [Exposed=(Window, DedicatedWorker), Serializable, Pref="dom.webgpu.enabled"] interface GPUShaderStage { - const GPUShaderStageFlags VERTEX = 0x1; - const GPUShaderStageFlags FRAGMENT = 0x2; - const GPUShaderStageFlags COMPUTE = 0x4; + const GPUShaderStageFlags VERTEX = 1; + const GPUShaderStageFlags FRAGMENT = 2; + const GPUShaderStageFlags COMPUTE = 4; }; -typedef unsigned long GPUShaderStageFlags; +typedef [EnforceRange] unsigned long GPUShaderStageFlags; diff --git a/components/script/dom/webidls/GPUSwapChain.webidl b/components/script/dom/webidls/GPUSupportedFeatures.noidl similarity index 65% rename from components/script/dom/webidls/GPUSwapChain.webidl rename to components/script/dom/webidls/GPUSupportedFeatures.noidl index aa64e232134..e0adcc047af 100644 --- a/components/script/dom/webidls/GPUSwapChain.webidl +++ b/components/script/dom/webidls/GPUSupportedFeatures.noidl @@ -2,9 +2,8 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -// https://gpuweb.github.io/gpuweb/#gpuswapchain +// https://gpuweb.github.io/gpuweb/#gpusupportedfeatures [Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] -interface GPUSwapChain { - GPUTexture getCurrentTexture(); +interface GPUSupportedFeatures { + readonly setlike; }; -GPUSwapChain includes GPUObjectBase; diff --git a/components/script/dom/webidls/GPUSupportedLimits.webidl b/components/script/dom/webidls/GPUSupportedLimits.webidl new file mode 100644 index 00000000000..581677d97c2 --- /dev/null +++ b/components/script/dom/webidls/GPUSupportedLimits.webidl @@ -0,0 +1,34 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +// https://gpuweb.github.io/gpuweb/#gpusupportedlimits +[Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] +interface GPUSupportedLimits { + readonly attribute unsigned long maxTextureDimension1D; + readonly attribute unsigned long maxTextureDimension2D; + readonly attribute unsigned long maxTextureDimension3D; + readonly attribute unsigned long maxTextureArrayLayers; + readonly attribute unsigned long maxBindGroups; + readonly attribute unsigned long maxDynamicUniformBuffersPerPipelineLayout; + readonly attribute unsigned long maxDynamicStorageBuffersPerPipelineLayout; + readonly attribute unsigned long maxSampledTexturesPerShaderStage; + readonly attribute unsigned long maxSamplersPerShaderStage; + readonly attribute unsigned long maxStorageBuffersPerShaderStage; + readonly attribute unsigned long maxStorageTexturesPerShaderStage; + readonly attribute unsigned long maxUniformBuffersPerShaderStage; + readonly attribute unsigned long maxUniformBufferBindingSize; + readonly attribute unsigned long maxStorageBufferBindingSize; + readonly attribute unsigned long minUniformBufferOffsetAlignment; + readonly attribute unsigned long minStorageBufferOffsetAlignment; + readonly attribute unsigned long maxVertexBuffers; + readonly attribute unsigned long maxVertexAttributes; + readonly attribute unsigned long maxVertexBufferArrayStride; + readonly attribute unsigned long maxInterStageShaderComponents; + readonly attribute unsigned long maxComputeWorkgroupStorageSize; + readonly attribute unsigned long maxComputeInvocationsPerWorkgroup; + readonly attribute unsigned long maxComputeWorkgroupSizeX; + readonly attribute unsigned long maxComputeWorkgroupSizeY; + readonly attribute unsigned long maxComputeWorkgroupSizeZ; + readonly attribute unsigned long maxComputeWorkgroupsPerDimension; +}; diff --git a/components/script/dom/webidls/GPUTexture.webidl b/components/script/dom/webidls/GPUTexture.webidl index ad68a533c6c..0448bbdb096 100644 --- a/components/script/dom/webidls/GPUTexture.webidl +++ b/components/script/dom/webidls/GPUTexture.webidl @@ -5,6 +5,7 @@ // https://gpuweb.github.io/gpuweb/#gputexture [Exposed=(Window, DedicatedWorker), Serializable , Pref="dom.webgpu.enabled"] interface GPUTexture { + [NewObject] GPUTextureView createView(optional GPUTextureViewDescriptor descriptor = {}); undefined destroy(); @@ -18,12 +19,13 @@ dictionary GPUTextureDescriptor : GPUObjectDescriptorBase { GPUTextureDimension dimension = "2d"; required GPUTextureFormat format; required GPUTextureUsageFlags usage; + sequence viewFormats = []; }; enum GPUTextureDimension { "1d", "2d", - "3d" + "3d", }; enum GPUTextureFormat { @@ -57,9 +59,8 @@ enum GPUTextureFormat { "bgra8unorm", "bgra8unorm-srgb", // Packed 32-bit formats - //"rgb9e5ufloat", "rgb10a2unorm", - //"rg11b10ufloat", + "rg11b10float", // 64-bit formats "rg32uint", @@ -75,7 +76,7 @@ enum GPUTextureFormat { "rgba32float", // Depth and stencil formats - //"stencil8", + //"stencil8", //TODO //"depth16unorm", "depth24plus", "depth24plus-stencil8", @@ -94,29 +95,22 @@ enum GPUTextureFormat { "bc5-rg-unorm", "bc5-rg-snorm", "bc6h-rgb-ufloat", - //"bc6h-rgb-float", + "bc6h-rgb-float", "bc7-rgba-unorm", "bc7-rgba-unorm-srgb", - // "depth24unorm-stencil8" extension + // "depth24unorm-stencil8" feature //"depth24unorm-stencil8", - // "depth32float-stencil8" extension + // "depth32float-stencil8" feature //"depth32float-stencil8", }; -enum GPUTextureComponentType { - "float", - "sint", - "uint", - // Texture is used with comparison sampling only. - "depth-comparison" -}; +typedef [EnforceRange] unsigned long GPUIntegerCoordinate; dictionary GPUExtent3DDict { required GPUIntegerCoordinate width; - required GPUIntegerCoordinate height; - required GPUIntegerCoordinate depth; + GPUIntegerCoordinate height = 1; + GPUIntegerCoordinate depthOrArrayLayers = 1; }; -typedef [EnforceRange] unsigned long GPUIntegerCoordinate; typedef (sequence or GPUExtent3DDict) GPUExtent3D; diff --git a/components/script/dom/webidls/GPUTextureUsage.webidl b/components/script/dom/webidls/GPUTextureUsage.webidl index dbb93c37fa7..9ff666dff41 100644 --- a/components/script/dom/webidls/GPUTextureUsage.webidl +++ b/components/script/dom/webidls/GPUTextureUsage.webidl @@ -2,14 +2,14 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -// https://gpuweb.github.io/gpuweb/#gputextureusage +// https://gpuweb.github.io/gpuweb/#typedefdef-gputextureusageflags [Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] interface GPUTextureUsage { const GPUTextureUsageFlags COPY_SRC = 0x01; const GPUTextureUsageFlags COPY_DST = 0x02; - const GPUTextureUsageFlags SAMPLED = 0x04; - const GPUTextureUsageFlags STORAGE = 0x08; - const GPUTextureUsageFlags OUTPUT_ATTACHMENT = 0x10; + const GPUTextureUsageFlags TEXTURE_BINDING = 0x04; + const GPUTextureUsageFlags STORAGE_BINDING = 0x08; + const GPUTextureUsageFlags RENDER_ATTACHMENT = 0x10; }; typedef [EnforceRange] unsigned long GPUTextureUsageFlags; diff --git a/components/script/dom/webidls/GPUValidationError.webidl b/components/script/dom/webidls/GPUValidationError.webidl index e62feeb7784..e4c1249e311 100644 --- a/components/script/dom/webidls/GPUValidationError.webidl +++ b/components/script/dom/webidls/GPUValidationError.webidl @@ -5,6 +5,7 @@ // https://gpuweb.github.io/gpuweb/#gpuvalidationerror [Exposed=(Window, DedicatedWorker), Pref="dom.webgpu.enabled"] interface GPUValidationError { + [Throws] constructor(DOMString message); readonly attribute DOMString message; }; @@ -18,5 +19,6 @@ enum GPUErrorFilter { partial interface GPUDevice { undefined pushErrorScope(GPUErrorFilter filter); + [NewObject] Promise popErrorScope(); }; diff --git a/components/webgpu/Cargo.toml b/components/webgpu/Cargo.toml index c096852c687..199bde2d5d2 100644 --- a/components/webgpu/Cargo.toml +++ b/components/webgpu/Cargo.toml @@ -22,5 +22,17 @@ servo_config = { path = "../config" } smallvec = { workspace = true, features = ["serde"] } webrender_api = { workspace = true } webrender_traits = { path = "../webrender_traits" } -wgpu-core = { version = "0.6.0", git = "https://github.com/gfx-rs/wgpu", features = ["replay", "trace", "serial-pass"], rev = "e72724a6e393503c73f37e86aa9317a5c62e32b8" } -wgpu-types = { version = "0.6.0", git = "https://github.com/gfx-rs/wgpu", features = ["replay", "trace"], rev = "e72724a6e393503c73f37e86aa9317a5c62e32b8" } +wgpu-core = { version = "0.16", features = ["replay", "trace", "serial-pass", "wgsl"] } +wgpu-types = { version = "0.16" } + +[target.'cfg(any(target_os = "ios", target_os = "macos"))'.dependencies.wgpu-core] +version = "0.16" +features = ["replay", "trace", "serial-pass", "metal"] + +[target.'cfg(all(unix, not(target_os = "ios"), not(target_os = "macos")))'.dependencies.wgpu-core] +version = "0.16" +features = ["replay", "trace", "serial-pass", "vulkan"] + +[target.'cfg(windows)'.dependencies.wgpu-core] +version = "0.16" +features = ["replay", "trace", "serial-pass", "dx11", "dx12", "vulkan"] diff --git a/components/webgpu/identity.rs b/components/webgpu/identity.rs index 0d199f1c009..eb04017911e 100644 --- a/components/webgpu/identity.rs +++ b/components/webgpu/identity.rs @@ -10,8 +10,8 @@ use wgpu::{ hub::{GlobalIdentityHandlerFactory, IdentityHandler, IdentityHandlerFactory}, id::{ AdapterId, BindGroupId, BindGroupLayoutId, BufferId, CommandBufferId, ComputePipelineId, - DeviceId, PipelineLayoutId, RenderBundleId, RenderPipelineId, SamplerId, ShaderModuleId, - SurfaceId, SwapChainId, TextureId, TextureViewId, TypedId, + DeviceId, PipelineLayoutId, QuerySetId, RenderBundleId, RenderPipelineId, SamplerId, + ShaderModuleId, StagingBufferId, SurfaceId, TextureId, TextureViewId, TypedId, }, }; use wgt::Backend; @@ -28,7 +28,6 @@ pub enum WebGPUMsg { FreeAdapter(AdapterId), FreeDevice(DeviceId), FreeBuffer(BufferId), - FreeSwapChain(SwapChainId), FreePipelineLayout(PipelineLayoutId), FreeComputePipeline(ComputePipelineId), FreeRenderPipeline(RenderPipelineId), @@ -41,6 +40,8 @@ pub enum WebGPUMsg { FreeSurface(SurfaceId), FreeShaderModule(ShaderModuleId), FreeRenderBundle(RenderBundleId), + FreeStagingBuffer(StagingBufferId), + FreeQuerySet(QuerySetId), WebGPUOpResult { device: WebGPUDevice, scope_id: Option, @@ -92,9 +93,14 @@ impl_identity_handler!(TextureId, "texture", WebGPUMsg::FreeTexture); impl_identity_handler!(TextureViewId, "texture_view", WebGPUMsg::FreeTextureView); impl_identity_handler!(BufferId, "buffer", WebGPUMsg::FreeBuffer); impl_identity_handler!(BindGroupId, "bind_group", WebGPUMsg::FreeBindGroup); -impl_identity_handler!(SwapChainId, "swap_chain", WebGPUMsg::FreeSwapChain); impl_identity_handler!(ShaderModuleId, "shader_module", WebGPUMsg::FreeShaderModule); impl_identity_handler!(RenderBundleId, "render_bundle", WebGPUMsg::FreeRenderBundle); +impl_identity_handler!( + StagingBufferId, + "staging_buffer", + WebGPUMsg::FreeStagingBuffer +); +impl_identity_handler!(QuerySetId, "quary_set", WebGPUMsg::FreeQuerySet); impl_identity_handler!( RenderPipelineId, "render_pipeline", @@ -149,7 +155,7 @@ where IdentityRecycler: IdentityHandler, { type Filter = IdentityRecycler; - fn spawn(&self, _min_index: u32) -> Self::Filter { + fn spawn(&self) -> Self::Filter { IdentityRecycler { sender: self.sender.clone(), self_sender: self.self_sender.clone(), diff --git a/components/webgpu/lib.rs b/components/webgpu/lib.rs index 4bd4e21e97d..2ecc3779aa1 100644 --- a/components/webgpu/lib.rs +++ b/components/webgpu/lib.rs @@ -35,11 +35,14 @@ use webrender_traits::{ WebrenderExternalImageApi, WebrenderExternalImageRegistry, WebrenderImageHandlerType, WebrenderImageSource, }; +use wgpu::device::DeviceDescriptor; +use wgpu::pipeline::ShaderModuleDescriptor; +use wgpu::resource::{BufferMapCallback, BufferMapCallbackC}; use wgpu::{ binding_model::{BindGroupDescriptor, BindGroupLayoutDescriptor, PipelineLayoutDescriptor}, command::{ - BufferCopyView, ComputePass, RenderBundleDescriptor, RenderBundleEncoder, RenderPass, - TextureCopyView, + ComputePass, ImageCopyBuffer, ImageCopyTexture, RenderBundleDescriptor, + RenderBundleEncoder, RenderPass, }, device::{HostMap, ImplicitPipelineIds}, id, @@ -50,6 +53,7 @@ use wgpu::{ TextureDescriptor, TextureViewDescriptor, }, }; +use wgt::{Dx12Compiler, InstanceDescriptor}; pub type ErrorScopeId = NonZeroU64; const DEVICE_POLL_INTERVAL: u64 = 100; @@ -58,15 +62,15 @@ pub const PRESENTATION_BUFFER_COUNT: usize = 10; #[derive(Debug, Deserialize, Serialize)] pub enum WebGPUResponse { RequestAdapter { - adapter_name: String, + adapter_info: wgt::AdapterInfo, adapter_id: WebGPUAdapter, + limits: wgt::Limits, channel: WebGPU, }, RequestDevice { device_id: WebGPUDevice, queue_id: WebGPUQueue, - descriptor: wgt::DeviceDescriptor, - label: Option, + descriptor: wgt::DeviceDescriptor>, }, BufferMapAsync(IpcSharedMemory), } @@ -100,20 +104,20 @@ pub enum WebGPURequest { }, CopyBufferToTexture { command_encoder_id: id::CommandEncoderId, - source: BufferCopyView, - destination: TextureCopyView, + source: ImageCopyBuffer, + destination: ImageCopyTexture, copy_size: wgt::Extent3d, }, CopyTextureToBuffer { command_encoder_id: id::CommandEncoderId, - source: TextureCopyView, - destination: BufferCopyView, + source: ImageCopyTexture, + destination: ImageCopyBuffer, copy_size: wgt::Extent3d, }, CopyTextureToTexture { command_encoder_id: id::CommandEncoderId, - source: TextureCopyView, - destination: TextureCopyView, + source: ImageCopyTexture, + destination: ImageCopyTexture, copy_size: wgt::Extent3d, }, CreateBindGroup { @@ -164,7 +168,8 @@ pub enum WebGPURequest { CreateShaderModule { device_id: id::DeviceId, program_id: id::ShaderModuleId, - program: Vec, + program: String, + label: Option, }, CreateSwapChain { device_id: id::DeviceId, @@ -186,6 +191,7 @@ pub enum WebGPURequest { descriptor: Option>, }, DestroyBuffer(id::BufferId), + DestroyDevice(id::DeviceId), DestroySwapChain { external_id: u64, image_key: ImageKey, @@ -208,10 +214,9 @@ pub enum WebGPURequest { RequestDevice { sender: IpcSender, adapter_id: WebGPUAdapter, - descriptor: wgt::DeviceDescriptor, + descriptor: wgt::DeviceDescriptor>, device_id: id::DeviceId, pipeline_id: PipelineId, - label: Option, }, RunComputePass { command_encoder_id: id::CommandEncoderId, @@ -251,8 +256,8 @@ pub enum WebGPURequest { }, WriteTexture { queue_id: id::QueueId, - texture_cv: TextureCopyView, - data_layout: wgt::TextureDataLayout, + texture_cv: ImageCopyTexture, + data_layout: wgt::ImageDataLayout, size: wgt::Extent3d, data: IpcSharedMemory, }, @@ -371,7 +376,14 @@ impl<'a> WGPU<'a> { receiver, sender, script_sender, - global: wgpu::hub::Global::new("wgpu-core", factory, wgt::BackendBit::PRIMARY), + global: wgpu::hub::Global::new( + "wgpu-core", + factory, + InstanceDescriptor { + backends: wgt::Backends::PRIMARY, + dx12_shader_compiler: Dx12Compiler::default(), + }, + ), adapters: Vec::new(), devices: HashMap::new(), _invalid_adapters: Vec::new(), @@ -409,7 +421,7 @@ impl<'a> WGPU<'a> { external_id: None, }; self.buffer_maps.insert(buffer_id, Rc::new(map_info)); - + // TODO(sagudev): replace with safe callback unsafe extern "C" fn callback( status: BufferMapAsyncStatus, userdata: *mut u8, @@ -420,10 +432,11 @@ impl<'a> WGPU<'a> { let msg = match status { BufferMapAsyncStatus::Success => { let global = &info.global; - let data_pt = gfx_select!(info.buffer_id => + let (slice_pointer, range_size) = gfx_select!(info.buffer_id => global.buffer_get_mapped_range(info.buffer_id, 0, None)) .unwrap(); - let data = slice::from_raw_parts(data_pt, info.size); + let data = + slice::from_raw_parts(slice_pointer, range_size as usize); Ok(WebGPUResponse::BufferMapAsync(IpcSharedMemory::from_bytes( data, ))) @@ -440,10 +453,14 @@ impl<'a> WGPU<'a> { let operation = BufferMapOperation { host: host_map, - callback, - user_data: convert_to_pointer( - self.buffer_maps.get(&buffer_id).unwrap().clone(), - ), + callback: unsafe { + BufferMapCallback::from_c(BufferMapCallbackC { + callback, + user_data: convert_to_pointer( + self.buffer_maps.get(&buffer_id).unwrap().clone(), + ), + }) + }, }; let global = &self.global; let result = gfx_select!(buffer_id => global.buffer_map_async(buffer_id, map_range, operation)); @@ -472,10 +489,12 @@ impl<'a> WGPU<'a> { { Err(err.clone()) } else { - gfx_select!(command_encoder_id => global.command_encoder_finish( - command_encoder_id, - &wgt::CommandBufferDescriptor::default() - )) + tuple_to_result( + gfx_select!(command_encoder_id => global.command_encoder_finish( + command_encoder_id, + &wgt::CommandBufferDescriptor::default() + )), + ) .map_err(|e| format!("{:?}", e)) }; self.encoder_record_error(command_encoder_id, &result); @@ -551,11 +570,8 @@ impl<'a> WGPU<'a> { descriptor, } => { let global = &self.global; - let result = gfx_select!(bind_group_id => - global.device_create_bind_group(device_id, &descriptor, bind_group_id)); - if result.is_err() { - let _ = gfx_select!(bind_group_id => global.bind_group_error(bind_group_id)); - } + let result = tuple_to_result(gfx_select!(bind_group_id => + global.device_create_bind_group(device_id, &descriptor, bind_group_id))); self.send_result(device_id, scope_id, result); }, WebGPURequest::CreateBindGroupLayout { @@ -565,16 +581,10 @@ impl<'a> WGPU<'a> { } => { let global = &self.global; if let Some(desc) = descriptor { - let result = gfx_select!(bind_group_layout_id => - global.device_create_bind_group_layout(device_id, &desc, bind_group_layout_id)); - if result.is_err() { - let _ = gfx_select!(bind_group_layout_id => - global.bind_group_layout_error(bind_group_layout_id)); - } + let result = tuple_to_result(gfx_select!(bind_group_layout_id => + global.device_create_bind_group_layout(device_id, &desc, bind_group_layout_id))); + self.send_result(device_id, scope_id, result); - } else { - let _ = gfx_select!(bind_group_layout_id => - global.bind_group_layout_error(bind_group_layout_id)); } }, WebGPURequest::CreateBuffer { @@ -584,14 +594,10 @@ impl<'a> WGPU<'a> { } => { let global = &self.global; if let Some(desc) = descriptor { - let result = gfx_select!(buffer_id => - global.device_create_buffer(device_id, &desc, buffer_id)); - if result.is_err() { - let _ = gfx_select!(buffer_id => global.buffer_error(buffer_id)); - } + let result = tuple_to_result(gfx_select!(buffer_id => + global.device_create_buffer(device_id, &desc, buffer_id))); + self.send_result(device_id, scope_id, result); - } else { - let _ = gfx_select!(buffer_id => global.buffer_error(buffer_id)); } }, WebGPURequest::CreateCommandEncoder { @@ -601,11 +607,9 @@ impl<'a> WGPU<'a> { } => { let global = &self.global; let desc = wgt::CommandEncoderDescriptor { label }; - let result = gfx_select!(command_encoder_id => - global.device_create_command_encoder(device_id, &desc, command_encoder_id)); - if result.is_err() { - let _ = gfx_select!(command_encoder_id => global.command_encoder_error(command_encoder_id)); - } + let result = tuple_to_result(gfx_select!(command_encoder_id => + global.device_create_command_encoder(device_id, &desc, command_encoder_id))); + self.send_result(device_id, scope_id, result); }, WebGPURequest::CreateComputePipeline { @@ -625,22 +629,14 @@ impl<'a> WGPU<'a> { root_id: *layout, group_ids: bgls.as_slice(), }); - let result = gfx_select!(compute_pipeline_id => global.device_create_compute_pipeline( - device_id, - &descriptor, - compute_pipeline_id, - implicit - )); - if result.is_err() { - let _ = gfx_select!(compute_pipeline_id => - global.compute_pipeline_error(compute_pipeline_id)); - if let Some((layout, bgls)) = implicit_ids { - let _ = gfx_select!(layout => global.pipeline_layout_error(layout)); - bgls.iter().for_each(|&bgl| { - let _ = gfx_select!(bgl => global.bind_group_layout_error(bgl)); - }); - } - } + let result = tuple_to_result( + gfx_select!(compute_pipeline_id => global.device_create_compute_pipeline( + device_id, + &descriptor, + compute_pipeline_id, + implicit + )), + ); self.send_result(device_id, scope_id, result); }, WebGPURequest::CreateContext(sender) => { @@ -659,11 +655,8 @@ impl<'a> WGPU<'a> { descriptor, } => { let global = &self.global; - let result = gfx_select!(pipeline_layout_id => - global.device_create_pipeline_layout(device_id, &descriptor, pipeline_layout_id)); - if result.is_err() { - let _ = gfx_select!(pipeline_layout_id => global.pipeline_layout_error(pipeline_layout_id)); - } + let result = tuple_to_result(gfx_select!(pipeline_layout_id => + global.device_create_pipeline_layout(device_id, &descriptor, pipeline_layout_id))); self.send_result(device_id, scope_id, result); }, WebGPURequest::CreateRenderPipeline { @@ -684,22 +677,9 @@ impl<'a> WGPU<'a> { group_ids: bgls.as_slice(), }); if let Some(desc) = descriptor { - let result = gfx_select!(render_pipeline_id => - global.device_create_render_pipeline(device_id, &desc, render_pipeline_id, implicit)); - if result.is_err() { - let _ = gfx_select!(render_pipeline_id => - global.render_pipeline_error(render_pipeline_id)); - if let Some((layout, bgls)) = implicit_ids { - let _ = - gfx_select!(layout => global.pipeline_layout_error(layout)); - bgls.iter().for_each(|&bgl| { - let _ = gfx_select!(bgl => global.bind_group_layout_error(bgl)); - }); - } - } + let result = tuple_to_result(gfx_select!(render_pipeline_id => + global.device_create_render_pipeline(device_id, &desc, render_pipeline_id, implicit))); self.send_result(device_id, scope_id, result); - } else { - let _ = gfx_select!(render_pipeline_id => global.render_pipeline_error(render_pipeline_id)); } }, WebGPURequest::CreateSampler { @@ -708,30 +688,31 @@ impl<'a> WGPU<'a> { descriptor, } => { let global = &self.global; - let result = gfx_select!(sampler_id => global.device_create_sampler( - device_id, - &descriptor, - sampler_id - )); - if result.is_err() { - let _ = gfx_select!(sampler_id => global.sampler_error(sampler_id)); - } + let result = tuple_to_result( + gfx_select!(sampler_id => global.device_create_sampler( + device_id, + &descriptor, + sampler_id + )), + ); self.send_result(device_id, scope_id, result); }, WebGPURequest::CreateShaderModule { device_id, program_id, program, + label, } => { let global = &self.global; - let source = - wgpu_core::pipeline::ShaderModuleSource::SpirV(Cow::Owned(program)); - let result = gfx_select!(program_id => - global.device_create_shader_module(device_id, source, program_id)); - if result.is_err() { - let _ = - gfx_select!(program_id => global.shader_module_error(program_id)); - } + let source = wgpu_core::pipeline::ShaderModuleSource::Wgsl( + crate::Cow::Owned(program), + ); + let desc = ShaderModuleDescriptor { + label: label.map(|s| s.into()), + shader_bound_checks: wgt::ShaderBoundChecks::default(), + }; + let result = tuple_to_result(gfx_select!(program_id => + global.device_create_shader_module(device_id, &desc, source, program_id))); self.send_result(device_id, scope_id, result); }, WebGPURequest::CreateSwapChain { @@ -785,17 +766,14 @@ impl<'a> WGPU<'a> { } => { let global = &self.global; if let Some(desc) = descriptor { - let result = gfx_select!(texture_id => global.device_create_texture( - device_id, - &desc, - texture_id - )); - if result.is_err() { - let _ = gfx_select!(texture_id => global.texture_error(texture_id)); - } + let result = tuple_to_result( + gfx_select!(texture_id => global.device_create_texture( + device_id, + &desc, + texture_id + )), + ); self.send_result(device_id, scope_id, result); - } else { - let _ = gfx_select!(texture_id => global.texture_error(texture_id)); } }, WebGPURequest::CreateTextureView { @@ -806,23 +784,25 @@ impl<'a> WGPU<'a> { } => { let global = &self.global; if let Some(desc) = descriptor { - let result = gfx_select!(texture_view_id => global.texture_create_view( - texture_id, - &desc, - texture_view_id - )); - if result.is_err() { - let _ = gfx_select!(texture_view_id => global.texture_view_error(texture_view_id)); - } + let result = tuple_to_result( + gfx_select!(texture_view_id => global.texture_create_view( + texture_id, + &desc, + texture_view_id + )), + ); + self.send_result(device_id, scope_id, result); - } else { - let _ = gfx_select!(texture_view_id => global.texture_view_error(texture_view_id)); } }, WebGPURequest::DestroyBuffer(buffer) => { let global = &self.global; gfx_select!(buffer => global.buffer_drop(buffer, false)); }, + WebGPURequest::DestroyDevice(device) => { + let global = &self.global; + gfx_select!(device => global.device_drop(device)); + }, WebGPURequest::DestroySwapChain { external_id, image_key, @@ -852,7 +832,7 @@ impl<'a> WGPU<'a> { }, WebGPURequest::DestroyTexture(texture) => { let global = &self.global; - gfx_select!(texture => global.texture_drop(texture)); + gfx_select!(texture => global.texture_drop(texture, true)); }, WebGPURequest::Exit(sender) => { if let Err(e) = self.script_sender.send(WebGPUMsg::Exit) { @@ -885,14 +865,14 @@ impl<'a> WGPU<'a> { device_id, } => { let global = &self.global; - let result = gfx_select!(render_bundle_id => global.render_bundle_encoder_finish( - render_bundle_encoder, - &descriptor, - render_bundle_id - )); - if result.is_err() { - let _ = gfx_select!(render_bundle_id => global.render_bundle_error(render_bundle_id)); - } + let result = tuple_to_result( + gfx_select!(render_bundle_id => global.render_bundle_encoder_finish( + render_bundle_encoder, + &descriptor, + render_bundle_id + )), + ); + self.send_result(device_id, scope_id, result); }, WebGPURequest::RequestAdapter { @@ -920,9 +900,12 @@ impl<'a> WGPU<'a> { let global = &self.global; let info = gfx_select!(adapter_id => global.adapter_get_info(adapter_id)).unwrap(); + let limits = + gfx_select!(adapter_id => global.adapter_limits(adapter_id)).unwrap(); if let Err(e) = sender.send(Ok(WebGPUResponse::RequestAdapter { - adapter_name: info.name, + adapter_info: info, adapter_id: adapter, + limits, channel: WebGPU(self.sender.clone()), })) { warn!( @@ -937,18 +920,23 @@ impl<'a> WGPU<'a> { descriptor, device_id, pipeline_id, - label, } => { + let desc = DeviceDescriptor { + label: descriptor.label.as_ref().map(|l| crate::Cow::from(l)), + features: descriptor.features.clone(), + limits: descriptor.limits.clone(), + }; let global = &self.global; - let id = match gfx_select!(device_id => global.adapter_request_device( - adapter_id.0, - &descriptor, - None, - device_id - )) { + let id = match tuple_to_result( + gfx_select!(device_id => global.adapter_request_device( + adapter_id.0, + &desc, + None, + device_id + )), + ) { Ok(id) => id, Err(e) => { - let _ = gfx_select!(device_id => global.device_error(device_id)); if let Err(w) = sender.send(Err(format!("{:?}", e))) { warn!( "Failed to send response to WebGPURequest::RequestDevice ({})", @@ -967,7 +955,6 @@ impl<'a> WGPU<'a> { device_id: device, queue_id: queue, descriptor, - label, })) { warn!( "Failed to send response to WebGPURequest::RequestDevice ({})", @@ -1051,8 +1038,8 @@ impl<'a> WGPU<'a> { let buffer_desc = wgt::BufferDescriptor { label: None, size: buffer_size, - usage: wgt::BufferUsage::MAP_READ | - wgt::BufferUsage::COPY_DST, + usage: wgt::BufferUsages::MAP_READ | + wgt::BufferUsages::COPY_DST, mapped_at_creation: false, }; let _ = gfx_select!(b_id => global.device_create_buffer( @@ -1084,23 +1071,24 @@ impl<'a> WGPU<'a> { encoder_id )); - let buffer_cv = BufferCopyView { + let buffer_cv = ImageCopyBuffer { buffer: buffer_id, - layout: wgt::TextureDataLayout { + layout: wgt::ImageDataLayout { offset: 0, - bytes_per_row: buffer_stride, - rows_per_image: 0, + bytes_per_row: Some(buffer_stride), + rows_per_image: None, }, }; - let texture_cv = TextureCopyView { + let texture_cv = ImageCopyTexture { texture: texture_id, mip_level: 0, origin: wgt::Origin3d::ZERO, + aspect: wgt::TextureAspect::All, }; let copy_size = wgt::Extent3d { width: size.width as u32, height: size.height as u32, - depth: 1, + depth_or_array_layers: 1, }; let _ = gfx_select!(encoder_id => global.command_encoder_copy_texture_to_buffer( encoder_id, @@ -1126,6 +1114,7 @@ impl<'a> WGPU<'a> { }; self.present_buffer_maps .insert(buffer_id, Rc::new(map_info)); + // TODO(sagudev): replace with safe callback unsafe extern "C" fn callback( status: BufferMapAsyncStatus, userdata: *mut u8, @@ -1152,10 +1141,14 @@ impl<'a> WGPU<'a> { } let map_op = BufferMapOperation { host: HostMap::Read, - callback, - user_data: convert_to_pointer( - self.present_buffer_maps.get(&buffer_id).unwrap().clone(), - ), + callback: unsafe { + BufferMapCallback::from_c(BufferMapCallbackC { + callback, + user_data: convert_to_pointer( + self.present_buffer_maps.get(&buffer_id).unwrap().clone(), + ), + }) + }, }; let _ = gfx_select!(buffer_id => global.buffer_map_async(buffer_id, 0..buffer_size, map_op)); }, @@ -1169,14 +1162,17 @@ impl<'a> WGPU<'a> { } => { let global = &self.global; if !is_map_read { - let map_ptr = gfx_select!(buffer_id => global.buffer_get_mapped_range( - buffer_id, - offset, - wgt::BufferSize::new(size) - )) - .unwrap(); - unsafe { slice::from_raw_parts_mut(map_ptr, size as usize) } - .copy_from_slice(&array_buffer); + let (slice_pointer, range_size) = + gfx_select!(buffer_id => global.buffer_get_mapped_range( + buffer_id, + offset, + Some(size) + )) + .unwrap(); + unsafe { + slice::from_raw_parts_mut(slice_pointer, range_size as usize) + } + .copy_from_slice(&array_buffer); } let result = gfx_select!(buffer_id => global.buffer_unmap(buffer_id)); self.send_result(device_id, scope_id, result); @@ -1187,10 +1183,12 @@ impl<'a> WGPU<'a> { external_id, } => { let global = &self.global; - let data_pt = gfx_select!(buffer_id => - global.buffer_get_mapped_range(buffer_id, 0, None)) + let (slice_pointer, range_size) = gfx_select!(buffer_id => + global.buffer_get_mapped_range(buffer_id, 0, Some(buffer_size as u64))) .unwrap(); - let data = unsafe { slice::from_raw_parts(data_pt, buffer_size) }.to_vec(); + let data = + unsafe { slice::from_raw_parts(slice_pointer, range_size as usize) } + .to_vec(); if let Some(present_data) = self.wgpu_image_map.lock().unwrap().get_mut(&external_id) { @@ -1297,6 +1295,14 @@ fn convert_to_pointer(obj: Rc) -> *mut u8 { Rc::into_raw(obj) as *mut u8 } +fn tuple_to_result(res: (T, Option)) -> Result { + if let Some(err) = res.1 { + Err(err) + } else { + Ok(res.0) + } +} + macro_rules! webgpu_resource { ($name:ident, $id:ty) => { #[derive(Clone, Copy, Debug, Deserialize, Hash, PartialEq, Serialize)] @@ -1326,7 +1332,7 @@ webgpu_resource!(WebGPURenderBundle, id::RenderBundleId); webgpu_resource!(WebGPURenderPipeline, id::RenderPipelineId); webgpu_resource!(WebGPUSampler, id::SamplerId); webgpu_resource!(WebGPUShaderModule, id::ShaderModuleId); -webgpu_resource!(WebGPUSwapChain, id::SwapChainId); +webgpu_resource!(WebGPUSurface, id::SurfaceId); webgpu_resource!(WebGPUTexture, id::TextureId); webgpu_resource!(WebGPUTextureView, id::TextureViewId); diff --git a/ports/libsimpleservo/capi/Cargo.toml b/ports/libsimpleservo/capi/Cargo.toml index 4815ed94f89..06656b85af1 100644 --- a/ports/libsimpleservo/capi/Cargo.toml +++ b/ports/libsimpleservo/capi/Cargo.toml @@ -26,7 +26,7 @@ libc = { workspace = true } winapi = { workspace = true, features = ["wingdi", "winuser", "winnt", "winbase", "processenv", "namedpipeapi", "ntdef", "minwindef", "handleapi", "debugapi"] } [build-dependencies] -cbindgen = "0.20" +cbindgen = "0.24" [features] debugmozjs = ["simpleservo/debugmozjs"] diff --git a/python/servo/testing_commands.py b/python/servo/testing_commands.py index 28d6a1334f0..9ac9cffdda9 100644 --- a/python/servo/testing_commands.py +++ b/python/servo/testing_commands.py @@ -775,7 +775,7 @@ tests/wpt/mozilla/tests for Servo-only tests""" % reference_path) delete(path.join(tdir, "webgpu")) copy_tree(path.join(clone_dir, "out-wpt"), path.join(tdir, "webgpu")) # update commit - commit = subprocess.check_output(["git", "rev-parse", "HEAD"]).decode() + commit = subprocess.check_output(["git", "rev-parse", "HEAD"], cwd=clone_dir).decode() with open(path.join(tdir, "checkout_commit.txt"), 'w') as file: file.write(commit) # clean up diff --git a/servo-tidy.toml b/servo-tidy.toml index 14f4a16b862..124c7857e77 100644 --- a/servo-tidy.toml +++ b/servo-tidy.toml @@ -25,17 +25,14 @@ packages = [ "base64", "cfg-if", "cookie", - "fixedbitset", "getrandom", "image", "itoa", "libloading", - "metal", "miniz_oxide", "num-rational", "parking_lot", "parking_lot_core", - "petgraph", "png", "rand", "rand_chacha", @@ -74,14 +71,24 @@ packages = [ "digest", "generic-array", - # Duplicated by winit/surfman update. - "raw-window-handle", + # Duplicated by surfman/wgpu update. + "bitflags", + "windows-sys", + "windows-targets", + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_msvc", + "windows_x86_64_gnullvm", # Temporarily duplicated until gleam can be upgrded. "uuid", # winit port minibrowser (servo/servo#30049) "clipboard-win", + "ahash", ] # Files that are ignored for all tidy and lint checks. files = [ @@ -132,4 +139,4 @@ directories = [ # Directories that are checked for correct file extension [check_ext] # directory, list of expected file extensions -"./components/script/dom/webidls" = [".webidl"] +"./components/script/dom/webidls" = [".webidl", "noidl"] diff --git a/tests/wpt/webgpu/meta/MANIFEST.json b/tests/wpt/webgpu/meta/MANIFEST.json index 590b9025069..a5d685a6e16 100644 --- a/tests/wpt/webgpu/meta/MANIFEST.json +++ b/tests/wpt/webgpu/meta/MANIFEST.json @@ -470,7 +470,7 @@ [] ], "checkout_commit.txt": [ - "5db12b3c0c240f6567fa294f3fa56dfd75b6e891", + "ede5c184cdc42d0374d6e712f49f86313747cfea", [] ], "webgpu": { diff --git a/tests/wpt/webgpu/meta/webgpu/cts.https.html.ini b/tests/wpt/webgpu/meta/webgpu/cts.https.html.ini index 3365159df38..85a9f0a05e0 100644 --- a/tests/wpt/webgpu/meta/webgpu/cts.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/cts.https.html.ini @@ -12656,11 +12656,6 @@ expected: FAIL -[cts.https.html?q=webgpu:web_platform,canvas,context_creation:return_type:*] - [:offscreen=false] - expected: FAIL - - [cts.https.html?q=webgpu:api,operation,memory_sync,buffer,multiple_buffers:multiple_pairs_of_draws_in_one_render_bundle:*] [:] expected: FAIL @@ -23146,9 +23141,6 @@ [cts.https.html?q=webgpu:api,operation,device,lost:lost_on_destroy:*] - [:] - expected: FAIL - [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,floor:abstract_float:*] [:inputSource="const";vectorize="_undef_"] @@ -24016,8 +24008,6 @@ expected: FAIL -[cts.https.html?q=webgpu:api,operation,uncapturederror:constructor:*] - [cts.https.html?q=webgpu:shader,execution,flow_control,while:while_nested_break:*] [:preventValueOptimizations=true] expected: FAIL @@ -30189,8 +30179,6 @@ expected: FAIL -[cts.https.html?q=webgpu:api,operation,uncapturederror:uncapturederror_from_non_originating_thread:*] - [cts.https.html?q=webgpu:api,validation,buffer,mapping:unmap,state,destroyed:*] [:] expected: FAIL @@ -32220,33 +32208,6 @@ [cts.https.html?q=webgpu:api,operation,adapter,requestAdapter:requestAdapter:*] - [:powerPreference="_undef_";forceFallbackAdapter="_undef_"] - expected: FAIL - - [:powerPreference="_undef_";forceFallbackAdapter=false] - expected: FAIL - - [:powerPreference="_undef_";forceFallbackAdapter=true] - expected: FAIL - - [:powerPreference="low-power";forceFallbackAdapter="_undef_"] - expected: FAIL - - [:powerPreference="low-power";forceFallbackAdapter=false] - expected: FAIL - - [:powerPreference="low-power";forceFallbackAdapter=true] - expected: FAIL - - [:powerPreference="high-performance";forceFallbackAdapter="_undef_"] - expected: FAIL - - [:powerPreference="high-performance";forceFallbackAdapter=false] - expected: FAIL - - [:powerPreference="high-performance";forceFallbackAdapter=true] - expected: FAIL - [cts.https.html?q=webgpu:shader,execution,flow_control,eval_order:binary_op:*] [:] @@ -35644,7 +35605,5574 @@ [cts.https.html?q=webgpu:shader,execution,robust_access_vertex:vertex_buffer_access:*] - expected: TIMEOUT + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=1000000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=4] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=100] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=10000] + expected: FAIL + + [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=1000000] + expected: FAIL + [cts.https.html?q=webgpu:api,validation,render_pipeline,inter_stage:interpolation_type:*] [:isAsync=false;output="";input=""] @@ -39811,8 +45339,9 @@ [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:invalid:*] + expected: TIMEOUT [:] - expected: FAIL + expected: TIMEOUT [cts.https.html?q=webgpu:api,validation,encoding,cmds,render,setVertexBuffer:vertex_buffer_state:*] @@ -47890,7 +53419,6 @@ [cts.https.html?q=webgpu:api,validation,createTexture:texture_size,2d_texture,compressed_format:*] - expected: TIMEOUT [:dimension="_undef_";format="bc1-rgba-unorm";size=[8191,1,1\]] expected: FAIL @@ -49860,6772 +55388,6772 @@ expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[4,8192,1\]] - expected: TIMEOUT + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="eac-rg11snorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-4x4-unorm-srgb";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[8187,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[8187,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[8197,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[8197,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[5,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[5,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[1,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[5,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[5,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[5,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[5,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[5,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[5,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm";size=[5,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[8187,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[8187,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[8197,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[8197,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[5,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[5,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[1,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[5,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[5,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[5,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[5,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[5,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[5,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x4-unorm-srgb";size=[5,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[8187,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[8187,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[8197,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[8197,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[5,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[5,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[1,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[5,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[5,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[5,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[5,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[5,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[5,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm";size=[5,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[8187,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[8187,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[8197,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[8197,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[5,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[5,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[1,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[5,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[5,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[5,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[5,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[5,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[5,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-5x5-unorm-srgb";size=[5,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[8186,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[8186,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[8198,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[8198,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[6,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[6,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[1,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[6,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[6,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[6,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[6,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[6,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[6,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm";size=[6,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[8186,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[8186,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[8198,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[8198,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[6,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[6,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[1,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[6,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[6,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[6,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[6,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[6,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[6,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x5-unorm-srgb";size=[6,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[8186,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[8186,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[8192,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[8198,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[8198,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[1,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[6,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[6,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[1,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[6,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[6,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[1,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[6,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[6,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[1,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[6,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[6,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[1,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm";size=[6,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[8186,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[8186,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[8192,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[8198,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[8198,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[1,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[6,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[6,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[1,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[6,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[6,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[1,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[6,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[6,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[1,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[6,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[6,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[1,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-6x6-unorm-srgb";size=[6,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8184,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8184,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8200,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8200,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[1,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm";size=[8,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8184,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8184,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8200,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8200,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[1,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x5-unorm-srgb";size=[8,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8184,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8184,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8192,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8200,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8200,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[1,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[1,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[1,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[1,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[1,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm";size=[8,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8184,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8184,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8192,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8200,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8200,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[1,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[1,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[1,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[1,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[1,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x6-unorm-srgb";size=[8,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8184,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8184,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8192,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8200,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8200,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[1,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[1,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[1,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[1,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[1,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm";size=[8,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8184,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8184,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8192,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8200,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8200,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[1,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[1,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[1,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[1,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[1,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-8x8-unorm-srgb";size=[8,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[8182,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[8202,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[10,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[10,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[10,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[10,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm";size=[10,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[8182,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[8202,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[10,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[10,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[10,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[10,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x5-unorm-srgb";size=[10,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[8182,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[8192,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[8202,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[1,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[10,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[10,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[1,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[10,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[1,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[10,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[1,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm";size=[10,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[8182,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[8192,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[8202,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[1,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[10,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[10,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[1,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[10,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[1,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[10,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[1,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x6-unorm-srgb";size=[10,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[8182,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[8192,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[8202,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[1,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[10,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[10,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[1,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[10,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[1,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[10,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[1,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm";size=[10,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[8182,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[8192,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[8202,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[1,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[10,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[10,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[1,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[10,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[1,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[10,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[1,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x8-unorm-srgb";size=[10,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[8182,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[8192,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[8202,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[1,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[10,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[10,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[1,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[10,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[1,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[10,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[1,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm";size=[10,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[8182,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[8192,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[8202,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[1,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[10,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[10,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[1,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[10,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[1,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[10,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[1,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-10x10-unorm-srgb";size=[10,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[8180,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[8180,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[8192,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[8204,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[8204,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[1,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[12,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[12,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[1,8204,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[12,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[12,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[1,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[12,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[12,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[1,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[12,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[12,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[1,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm";size=[12,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[8180,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[8180,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[8192,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[8204,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[8204,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[1,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[12,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[12,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[1,8204,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[12,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[12,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[1,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[12,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[12,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[1,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[12,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[12,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[1,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x10-unorm-srgb";size=[12,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[8180,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[8180,12,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[8192,12,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[8204,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[8204,12,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[1,8180,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[12,8180,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[12,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[1,8204,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[12,8204,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[12,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[1,12,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[12,12,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[12,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[1,12,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[12,12,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[12,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[1,12,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm";size=[12,12,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[8180,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[8180,12,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[8192,12,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[8204,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[8204,12,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[1,8180,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[12,8180,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[12,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[1,8204,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[12,8204,1\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[12,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[1,12,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[12,12,255\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[12,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[1,12,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[12,12,256\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[12,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[1,12,257\]] - expected: NOTRUN + expected: FAIL [:dimension="_undef_";format="astc-12x12-unorm-srgb";size=[12,12,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc1-rgba-unorm-srgb";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc2-rgba-unorm-srgb";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc3-rgba-unorm-srgb";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc4-r-snorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc5-rg-snorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-ufloat";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc6h-rgb-float";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="bc7-rgba-unorm-srgb";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8unorm-srgb";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgb8a1unorm-srgb";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="etc2-rgba8unorm-srgb";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-r11snorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="eac-rg11snorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[8188,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[8188,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[8196,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[8196,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[4,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[4,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[1,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[4,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[4,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[4,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[4,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[4,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[4,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-4x4-unorm-srgb";size=[4,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[8187,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[8187,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[8197,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[8197,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[5,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[5,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[1,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[5,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[5,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[5,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[5,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[5,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[5,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm";size=[5,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[8187,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[8187,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[8192,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[8197,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[8197,4,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[1,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[5,8188,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[5,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[1,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[5,8196,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[5,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[1,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[5,4,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[5,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[1,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[5,4,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[5,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[1,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x4-unorm-srgb";size=[5,4,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[8187,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[8187,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[8197,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[8197,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[5,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[5,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[1,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[5,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[5,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[5,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[5,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[5,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[5,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm";size=[5,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[8187,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[8187,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[8197,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[8197,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[5,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[5,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[1,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[5,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[5,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[5,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[5,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[5,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[5,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-5x5-unorm-srgb";size=[5,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[8186,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[8186,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[8198,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[8198,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[6,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[6,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[1,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[6,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[6,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[6,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[6,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[6,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[6,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm";size=[6,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[8186,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[8186,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[8198,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[8198,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[6,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[6,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[1,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[6,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[6,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[6,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[6,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[6,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[6,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x5-unorm-srgb";size=[6,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[8186,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[8186,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[8192,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[8198,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[8198,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[1,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[6,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[6,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[1,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[6,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[6,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[1,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[6,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[6,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[1,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[6,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[6,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[1,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm";size=[6,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[8186,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[8186,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[8192,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[8198,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[8198,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[1,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[6,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[6,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[1,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[6,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[6,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[1,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[6,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[6,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[1,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[6,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[6,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[1,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-6x6-unorm-srgb";size=[6,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8184,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8184,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8200,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8200,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[1,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm";size=[8,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8184,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8184,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8200,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8200,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[1,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x5-unorm-srgb";size=[8,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8184,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8184,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8192,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8200,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8200,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[1,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[1,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[1,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[1,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[1,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm";size=[8,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8184,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8184,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8192,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8200,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8200,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[1,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[1,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[1,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[1,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[1,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x6-unorm-srgb";size=[8,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8184,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8184,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8192,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8200,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8200,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[1,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[1,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[1,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[1,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[1,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm";size=[8,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8184,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8184,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8192,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8200,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8200,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[1,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[1,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[1,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[1,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[1,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-8x8-unorm-srgb";size=[8,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[8182,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[8202,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[10,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[10,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[10,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[10,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm";size=[10,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[8182,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[8192,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[8202,5,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[1,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[10,8187,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[10,8197,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[1,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[10,5,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[1,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[10,5,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[1,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x5-unorm-srgb";size=[10,5,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[8182,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[8192,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[8202,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[1,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[10,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[10,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[1,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[10,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[1,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[10,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[1,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm";size=[10,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[8182,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[8192,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[8202,6,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[1,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[10,8186,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[10,8198,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[1,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[10,6,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[1,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[10,6,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[1,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x6-unorm-srgb";size=[10,6,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[8182,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[8192,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[8202,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[1,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[10,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[10,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[1,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[10,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[1,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[10,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[1,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm";size=[10,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[8182,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[8192,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[8202,8,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[1,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[10,8184,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[10,8200,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[1,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[10,8,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[1,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[10,8,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[1,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x8-unorm-srgb";size=[10,8,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[8182,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[8192,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[8202,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[1,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[10,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[10,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[1,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[10,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[1,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[10,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[1,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm";size=[10,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[8182,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[8182,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[8192,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[8202,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[8202,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[1,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[10,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[10,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[1,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[10,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[10,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[1,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[10,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[10,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[1,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[10,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[10,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[1,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-10x10-unorm-srgb";size=[10,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[8180,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[8180,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[8192,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[8204,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[8204,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[1,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[12,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[12,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[1,8204,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[12,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[12,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[1,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[12,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[12,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[1,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[12,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[12,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[1,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm";size=[12,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[8180,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[8180,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[8192,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[8204,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[8204,10,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[1,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[12,8182,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[12,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[1,8204,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[12,8202,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[12,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[1,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[12,10,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[12,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[1,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[12,10,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[12,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[1,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x10-unorm-srgb";size=[12,10,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[8180,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[8180,12,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[8192,12,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[8204,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[8204,12,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[1,8180,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[12,8180,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[12,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[1,8204,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[12,8204,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[12,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[1,12,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[12,12,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[12,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[1,12,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[12,12,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[12,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[1,12,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm";size=[12,12,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[8191,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[8180,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[8180,12,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[8192,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[8192,12,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[8193,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[8204,1,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[8204,12,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[1,8191,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[1,8180,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[12,8180,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[1,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[12,8192,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[1,8193,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[1,8204,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[12,8204,1\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[1,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[12,1,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[1,12,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[12,12,255\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[1,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[12,1,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[1,12,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[12,12,256\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[1,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[12,1,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[1,12,257\]] - expected: NOTRUN + expected: FAIL [:dimension="2d";format="astc-12x12-unorm-srgb";size=[12,12,257\]] - expected: NOTRUN + expected: FAIL [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:f16:*] @@ -58477,8 +64005,6 @@ expected: FAIL -[cts.https.html?q=webgpu:idl,constants,flags:ColorWrite,count:*] - [cts.https.html?q=webgpu:api,validation,encoding,cmds,render,setIndexBuffer:offset_and_size_oob:*] [:] expected: FAIL @@ -65500,7 +71026,21 @@ [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limits,supported:*] - expected: CRASH + [:limit="maxBindingsPerBindGroup"] + expected: FAIL + + [:limit="maxBufferSize"] + expected: FAIL + + [:limit="maxInterStageShaderVariables"] + expected: FAIL + + [:limit="maxColorAttachments"] + expected: FAIL + + [:limit="maxColorAttachmentBytesPerSample"] + expected: FAIL + [cts.https.html?q=webgpu:api,validation,encoding,cmds,debug:debug_marker:*] [:encoderType="non-pass"] @@ -67717,7 +73257,5190 @@ [cts.https.html?q=webgpu:api,validation,encoding,cmds,render,draw:vertex_buffer_OOB:*] - expected: TIMEOUT + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="draw";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexed";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="zero";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="exile";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="zero";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="exile";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=false;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=false;AStride="oversize";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="zero";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="exact";offset=7] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=0] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=1] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=2] + expected: FAIL + + [:type="drawIndexedIndirect";VBSize="enough";IBSize="enough";VStride0=true;IStride0=true;AStride="oversize";offset=7] + expected: FAIL + [cts.https.html?q=webgpu:api,validation,image_copy,buffer_related:usage:*] [:method="CopyB2T"] @@ -67876,8 +78599,6 @@ expected: FAIL -[cts.https.html?q=webgpu:api,operation,uncapturederror:iff_uncaptured:*] - [cts.https.html?q=webgpu:shader,execution,flow_control,eval_order:2d_array_assignment:*] [:] expected: FAIL @@ -71410,13 +82131,6 @@ expected: FAIL -[cts.https.html?q=webgpu:web_platform,canvas,getPreferredCanvasFormat:value:*] - [:] - expected: FAIL - - -[cts.https.html?q=webgpu:idl,constants,flags:BufferUsage,values:*] - [cts.https.html?q=webgpu:api,validation,encoding,cmds,copyTextureToTexture:copy_ranges:*] [:dimension="1d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=0;dstCopyLevel=0] expected: FAIL @@ -73010,8 +83724,6 @@ expected: FAIL -[cts.https.html?q=webgpu:idl,constants,flags:ShaderStage,values:*] - [cts.https.html?q=webgpu:api,validation,queue,copyToTexture,CopyExternalImageToTexture:destination_texture,device_mismatch:*] [:] expected: FAIL @@ -74655,8 +85367,6 @@ expected: FAIL -[cts.https.html?q=webgpu:idl,constants,flags:TextureUsage,count:*] - [cts.https.html?q=webgpu:api,validation,createPipelineLayout:number_of_bind_group_layouts_exceeds_the_maximum_value:*] [:] expected: FAIL @@ -74944,8 +85654,6 @@ expected: FAIL -[cts.https.html?q=webgpu:api,validation,createTexture:texture_size,3d_texture,compressed_format:*] - [cts.https.html?q=webgpu:api,validation,encoding,cmds,index_access:out_of_bounds:*] [:indexCount=6;firstIndex=0;instanceCount=1] expected: FAIL @@ -83029,8 +93737,6 @@ expected: FAIL -[cts.https.html?q=webgpu:api,operation,uncapturederror:only_original_device_is_event_target:*] - [cts.https.html?q=webgpu:api,validation,compute_pipeline:pipeline_layout,device_mismatch:*] [:] expected: FAIL @@ -83858,9 +94564,6 @@ [cts.https.html?q=webgpu:api,operation,adapter,requestAdapter:requestAdapter_no_parameters:*] - [:] - expected: FAIL - [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:f32_to_vec2h:*] [:inputSource="const";vectorize="_undef_";alias=false] @@ -90599,9 +101302,6 @@ [cts.https.html?q=webgpu:api,operation,adapter,requestAdapterInfo:adapter_info:*] - [:] - expected: FAIL - [cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise:bitwise_and:*] [:type="i32";inputSource="const";vectorize="_undef_"] @@ -99447,8 +110147,6 @@ expected: FAIL -[cts.https.html?q=webgpu:api,operation,adapter,requestAdapterInfo:adapter_info_with_hints:*] - [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,frexp:f32_vec2_fract:*] [:inputSource="const"] expected: FAIL @@ -100307,8 +111005,6 @@ expected: FAIL -[cts.https.html?q=webgpu:idl,constants,flags:ShaderStage,count:*] - [cts.https.html?q=webgpu:api,validation,createBindGroup:storage_texture,format:*] [:storageTextureFormat="rgba8unorm";resourceFormat="rgba8unorm"] expected: FAIL @@ -108836,9 +119532,6 @@ [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limits,unknown:*] - [:] - expected: FAIL - [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:f16:*] [:inputSource="const"] @@ -125322,7 +136015,99 @@ [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limit,worse_than_default:*] - expected: CRASH + [:limit="maxTextureDimension1D"] + expected: FAIL + + [:limit="maxTextureDimension2D"] + expected: FAIL + + [:limit="maxTextureDimension3D"] + expected: FAIL + + [:limit="maxTextureArrayLayers"] + expected: FAIL + + [:limit="maxBindGroups"] + expected: FAIL + + [:limit="maxBindingsPerBindGroup"] + expected: FAIL + + [:limit="maxDynamicUniformBuffersPerPipelineLayout"] + expected: FAIL + + [:limit="maxDynamicStorageBuffersPerPipelineLayout"] + expected: FAIL + + [:limit="maxSampledTexturesPerShaderStage"] + expected: FAIL + + [:limit="maxSamplersPerShaderStage"] + expected: FAIL + + [:limit="maxStorageBuffersPerShaderStage"] + expected: FAIL + + [:limit="maxStorageTexturesPerShaderStage"] + expected: FAIL + + [:limit="maxUniformBuffersPerShaderStage"] + expected: FAIL + + [:limit="maxUniformBufferBindingSize"] + expected: FAIL + + [:limit="maxStorageBufferBindingSize"] + expected: FAIL + + [:limit="minUniformBufferOffsetAlignment"] + expected: FAIL + + [:limit="minStorageBufferOffsetAlignment"] + expected: FAIL + + [:limit="maxVertexBuffers"] + expected: FAIL + + [:limit="maxBufferSize"] + expected: FAIL + + [:limit="maxVertexAttributes"] + expected: FAIL + + [:limit="maxVertexBufferArrayStride"] + expected: FAIL + + [:limit="maxInterStageShaderComponents"] + expected: FAIL + + [:limit="maxInterStageShaderVariables"] + expected: FAIL + + [:limit="maxColorAttachments"] + expected: FAIL + + [:limit="maxColorAttachmentBytesPerSample"] + expected: FAIL + + [:limit="maxComputeWorkgroupStorageSize"] + expected: FAIL + + [:limit="maxComputeInvocationsPerWorkgroup"] + expected: FAIL + + [:limit="maxComputeWorkgroupSizeX"] + expected: FAIL + + [:limit="maxComputeWorkgroupSizeY"] + expected: FAIL + + [:limit="maxComputeWorkgroupSizeZ"] + expected: FAIL + + [:limit="maxComputeWorkgroupsPerDimension"] + expected: FAIL + [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,acos:abstract_float:*] [:inputSource="const";vectorize="_undef_"] @@ -130930,8 +141715,6 @@ expected: FAIL -[cts.https.html?q=webgpu:idl,constants,flags:ColorWrite,values:*] - [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureGather:depth_3d_coords:*] [:] expected: FAIL @@ -131802,8 +142585,6 @@ expected: FAIL -[cts.https.html?q=webgpu:idl,constants,flags:BufferUsage,count:*] - [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,floor:f32:*] [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -136533,17 +147314,6 @@ expected: FAIL -[cts.https.html?q=webgpu:idl,constants,flags:TextureUsage,values:*] - [:key="TEXTURE_BINDING"] - expected: FAIL - - [:key="STORAGE_BINDING"] - expected: FAIL - - [:key="RENDER_ATTACHMENT"] - expected: FAIL - - [cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:attachments,one_color_attachment:*] [:] expected: FAIL @@ -137103,6 +147873,7 @@ [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limit,better_than_supported:*] + expected: CRASH [:limit="maxTextureDimension1D"] expected: FAIL @@ -147581,6 +158352,7 @@ [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:features,known:*] + expected: CRASH [:feature="bgra8unorm-storage"] expected: FAIL diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_clear.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_clear.https.html.ini index 2ec1f1a89bd..6cc19ba5d99 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_clear.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_clear.https.html.ini @@ -1,2 +1,2 @@ [canvas_clear.https.html] - expected: TIMEOUT + expected: CRASH diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_colorspace_rgba16float.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_colorspace_rgba16float.https.html.ini index 9a81754e503..773502b55e5 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_colorspace_rgba16float.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_colorspace_rgba16float.https.html.ini @@ -1,2 +1,2 @@ [canvas_colorspace_rgba16float.https.html] - expected: TIMEOUT + expected: CRASH diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_copy.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_copy.https.html.ini index 4f9c1fc3644..ea8c1803f34 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_copy.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_copy.https.html.ini @@ -1,2 +1,2 @@ [canvas_complex_rgba16float_copy.https.html] - expected: TIMEOUT + expected: CRASH diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_draw.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_draw.https.html.ini index 6aab6528a9d..ea72b59ed4e 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_draw.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_draw.https.html.ini @@ -1,2 +1,2 @@ [canvas_complex_rgba16float_draw.https.html] - expected: TIMEOUT + expected: CRASH diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_store.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_store.https.html.ini index 2c13269b3e3..15352e72062 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_store.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_store.https.html.ini @@ -1,2 +1,2 @@ [canvas_complex_rgba16float_store.https.html] - expected: TIMEOUT + expected: CRASH diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_store.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_store.https.html.ini index c13a567bd96..eee89e4a407 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_store.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_store.https.html.ini @@ -1,2 +1,2 @@ [canvas_complex_rgba8unorm_store.https.html] - expected: TIMEOUT + expected: CRASH diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_copy.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_copy.https.html.ini index 9d3b9009c49..935dad57416 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_copy.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_copy.https.html.ini @@ -1,2 +1,2 @@ [canvas_composite_alpha_bgra8unorm_opaque_copy.https.html] - expected: TIMEOUT + expected: [PASS, FAIL] diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_draw.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_draw.https.html.ini index f0d47b0215b..5412573a942 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_draw.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_draw.https.html.ini @@ -1,2 +1,2 @@ [canvas_composite_alpha_bgra8unorm_opaque_draw.https.html] - expected: TIMEOUT + expected: [PASS, FAIL] diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_copy.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_copy.https.html.ini index cd4cd1e53ca..1c45c99997c 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_copy.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_copy.https.html.ini @@ -1,2 +1,2 @@ [canvas_composite_alpha_bgra8unorm_premultiplied_copy.https.html] - expected: TIMEOUT + expected: FAIL diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_draw.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_draw.https.html.ini index 09abd6876dc..7737a53cff1 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_draw.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_draw.https.html.ini @@ -1,2 +1,2 @@ [canvas_composite_alpha_bgra8unorm_premultiplied_draw.https.html] - expected: TIMEOUT + expected: FAIL diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_copy.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_copy.https.html.ini index 4190ac446d4..93d279f0aa0 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_copy.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_copy.https.html.ini @@ -1,2 +1,2 @@ [canvas_composite_alpha_rgba16float_opaque_copy.https.html] - expected: TIMEOUT + expected: CRASH diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_draw.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_draw.https.html.ini index 3ad85da88ed..4bfc53c9cd9 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_draw.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_draw.https.html.ini @@ -1,2 +1,2 @@ [canvas_composite_alpha_rgba16float_opaque_draw.https.html] - expected: TIMEOUT + expected: CRASH diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_copy.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_copy.https.html.ini index 2685168c860..15897bf1079 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_copy.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_copy.https.html.ini @@ -1,2 +1,2 @@ [canvas_composite_alpha_rgba16float_premultiplied_copy.https.html] - expected: TIMEOUT + expected: CRASH diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_draw.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_draw.https.html.ini index 1f8f534bf8d..79d2f593ec1 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_draw.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_draw.https.html.ini @@ -1,2 +1,2 @@ [canvas_composite_alpha_rgba16float_premultiplied_draw.https.html] - expected: TIMEOUT + expected: CRASH diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_copy.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_copy.https.html.ini index eea7e5f4ea9..7333eab184f 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_copy.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_copy.https.html.ini @@ -1,2 +1,2 @@ [canvas_composite_alpha_rgba8unorm_opaque_copy.https.html] - expected: TIMEOUT + expected: [PASS, FAIL] diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_draw.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_draw.https.html.ini index 12831f67562..fdfa88a2521 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_draw.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_draw.https.html.ini @@ -1,2 +1,2 @@ [canvas_composite_alpha_rgba8unorm_opaque_draw.https.html] - expected: TIMEOUT + expected: [PASS, FAIL] diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_copy.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_copy.https.html.ini index 0e2ae0415f3..2e826246236 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_copy.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_copy.https.html.ini @@ -1,2 +1,2 @@ [canvas_composite_alpha_rgba8unorm_premultiplied_copy.https.html] - expected: TIMEOUT + expected: FAIL diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_draw.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_draw.https.html.ini index 030a72eb69e..ff0a6d588fe 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_draw.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_draw.https.html.ini @@ -1,2 +1,2 @@ [canvas_composite_alpha_rgba8unorm_premultiplied_draw.https.html] - expected: TIMEOUT + expected: FAIL diff --git a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_image_rendering.https.html.ini b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_image_rendering.https.html.ini index b64101496ff..32bf52f0d76 100644 --- a/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_image_rendering.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/webgpu/web_platform/reftests/canvas_image_rendering.https.html.ini @@ -1,2 +1,2 @@ [canvas_image_rendering.https.html] - expected: TIMEOUT + expected: CRASH diff --git a/tests/wpt/webgpu/tests/checkout_commit.txt b/tests/wpt/webgpu/tests/checkout_commit.txt index 5db12b3c0c2..ede5c184cdc 100644 --- a/tests/wpt/webgpu/tests/checkout_commit.txt +++ b/tests/wpt/webgpu/tests/checkout_commit.txt @@ -1 +1 @@ -9ab2eade6a818ed58ac1a7b36b706858f3ba5eb3 +480edec387e8cd5bf5934680050c59a3f7a01438