steve-lunarg
e0b9debda2
Flatten uniform arrays
...
This checkin adds a --flatten-uniform-arrays option which can break
uniform arrays of samplers, textures, or UBOs up into individual
scalars named (e.g) myarray[0], myarray[1], etc. These appear as
individual linkage objects.
Code notes:
- shouldFlatten internally calls shouldFlattenIO, and shouldFlattenUniform,
but is the only flattening query directly called.
- flattenVariable will handle structs or arrays (but not yet arrayed structs;
this is tested an an error is generated).
- There's some error checking around unhandled situations. E.g, flattening
uniform arrays with initializer lists is not implemented.
- This piggybacks on as much of the existing mechanism for struct flattening
as it can. E.g, it uses the same flattenMap, and the same
flattenAccess() method.
- handleAssign() has been generalized to cope with either structs or arrays.
- Extended test infrastructure to test flattening ability.
2016-09-22 08:47:48 -06:00
..
2016-08-02 21:48:02 -06:00
2015-12-10 18:01:54 -07:00
2016-05-19 14:18:21 -04:00
2016-05-03 19:34:00 -06:00
2015-12-10 18:01:54 -07:00
2016-09-19 16:01:41 -06:00
2016-07-19 15:13:47 -06:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-03-27 08:47:43 +08:00
2016-07-29 18:29:06 -06:00
2015-12-10 18:01:54 -07:00
2016-08-02 21:48:02 -06:00
2016-08-02 21:48:02 -06:00
2016-05-03 19:34:00 -06:00
2016-08-02 21:48:02 -06:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-05-03 19:34:00 -06:00
2016-08-02 21:48:02 -06:00
2016-08-02 21:48:02 -06:00
2015-12-10 18:01:54 -07:00
2016-05-04 12:54:56 -06:00
2015-12-10 18:01:54 -07:00
2016-08-02 21:48:02 -06:00
2016-08-02 21:48:02 -06:00
2015-12-10 18:01:54 -07:00
2016-06-05 17:25:34 -06:00
2015-12-10 18:01:54 -07:00
2016-01-16 20:37:43 -07:00
2016-01-16 20:37:43 -07:00
2016-05-04 12:54:56 -06:00
2016-05-11 15:50:41 +08:00
2016-08-21 14:26:27 -06:00
2015-12-13 10:59:17 -07:00
2015-12-11 17:54:35 -07:00
2016-06-05 18:52:05 -06:00
2016-09-19 16:01:41 -06:00
2016-05-30 19:38:39 -06:00
2016-07-19 15:50:58 -06:00
2016-09-19 16:01:41 -06:00
2016-03-27 08:47:43 +08:00
2016-07-29 18:29:06 -06:00
2016-07-27 14:55:06 -06:00
2016-02-15 21:46:55 -07:00
2016-09-19 16:01:41 -06:00
2016-05-23 23:10:18 -06:00
2016-07-08 14:49:48 -06:00
2016-09-19 16:01:41 -06:00
2016-09-19 16:01:41 -06:00
2016-09-19 16:01:41 -06:00
2016-05-19 12:26:27 +08:00
2016-05-11 15:50:41 +08:00
2016-05-11 15:50:41 +08:00
2016-05-11 15:50:41 +08:00
2016-05-11 15:50:41 +08:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-09-19 16:01:41 -06:00
2016-08-31 13:46:50 -06:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-02-15 21:46:55 -07:00
2016-07-12 01:27:48 -06:00
2015-12-10 18:01:54 -07:00
2016-09-19 16:01:41 -06:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-08-31 13:46:50 -06:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-09-19 16:01:41 -06:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-05-25 09:26:43 +02:00
2016-09-19 16:01:41 -06:00
2016-05-25 09:26:43 +02:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-06-28 23:56:31 -06:00
2016-07-07 19:27:15 -06:00
2016-07-07 19:27:15 -06:00
2016-07-07 19:27:15 -06:00
2016-07-07 19:27:15 -06:00
2016-07-07 19:27:15 -06:00
2016-09-22 08:47:48 -06:00
2016-09-16 01:44:43 -06:00
2016-09-16 01:44:43 -06:00
2016-09-12 11:55:47 -06:00
2016-09-16 01:44:43 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-16 01:44:43 -06:00
2016-09-16 01:44:43 -06:00
2016-09-16 03:20:03 -06:00
2016-09-12 11:55:47 -06:00
2016-09-12 11:55:47 -06:00
2016-09-12 11:55:47 -06:00
2016-09-16 01:44:43 -06:00
2016-09-21 17:50:12 -06:00
2016-09-16 03:20:03 -06:00
2016-09-02 19:05:24 -06:00
2016-09-02 19:05:24 -06:00
2016-09-16 01:44:43 -06:00
2016-06-17 15:52:46 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-16 01:44:43 -06:00
2016-09-16 03:20:03 -06:00
2016-09-16 01:44:43 -06:00
2016-09-19 22:16:09 -06:00
2016-09-16 01:44:43 -06:00
2016-09-16 01:44:43 -06:00
2016-09-16 01:44:43 -06:00
2016-09-12 11:55:47 -06:00
2016-09-16 01:44:43 -06:00
2016-09-16 03:20:03 -06:00
2016-09-12 11:55:47 -06:00
2016-09-16 01:44:43 -06:00
2016-09-16 01:44:43 -06:00
2016-09-16 01:44:43 -06:00
2016-09-09 12:02:42 -06:00
2016-09-05 14:37:03 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-16 03:20:03 -06:00
2016-09-09 12:02:42 -06:00
2016-09-16 01:44:43 -06:00
2016-09-12 11:55:47 -06:00
2016-09-16 03:20:03 -06:00
2016-09-16 01:44:43 -06:00
2016-09-19 22:16:09 -06:00
2016-09-16 01:44:43 -06:00
2016-09-16 01:44:43 -06:00
2016-09-16 03:20:03 -06:00
2016-09-16 03:20:03 -06:00
2016-09-19 23:12:48 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-12 11:55:47 -06:00
2016-09-16 03:20:03 -06:00
2016-09-02 22:21:25 -06:00
2016-09-16 01:44:43 -06:00
2016-09-19 20:29:45 -06:00
2016-09-16 03:20:03 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-16 01:44:43 -06:00
2016-09-02 19:05:24 -06:00
2016-09-16 01:44:43 -06:00
2016-09-02 19:05:24 -06:00
2016-09-12 11:55:47 -06:00
2016-09-16 01:44:43 -06:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-05-25 09:26:43 +02:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-09-19 16:01:41 -06:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-13 10:59:17 -07:00
2016-06-27 12:44:15 +02:00
2016-05-09 17:07:04 -06:00
2015-12-10 18:01:54 -07:00
2016-09-19 16:01:41 -06:00
2015-12-10 18:01:54 -07:00
2016-09-19 16:01:41 -06:00
2016-07-30 13:25:33 -06:00
2016-01-22 15:40:24 -07:00
2016-08-02 21:48:02 -06:00
2016-05-09 10:46:40 -04:00
2016-05-09 10:46:40 -04:00
2015-12-10 18:01:54 -07:00
2016-05-03 19:34:00 -06:00
2015-12-10 18:01:54 -07:00
2015-07-27 13:07:52 -04:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-07-27 13:07:52 -04:00
2015-12-10 18:01:54 -07:00
2015-08-29 23:15:13 +00:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-04-27 10:22:22 -04:00
2016-04-27 10:05:57 -04:00
2015-12-10 18:01:54 -07:00
2015-07-14 16:02:25 -04:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-07-31 19:41:19 -04:00
2015-12-10 18:01:54 -07:00
2015-07-31 19:41:19 -04:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-07-14 16:02:25 -04:00
2015-12-10 18:01:54 -07:00
2016-03-09 15:11:56 -05:00
2016-03-09 15:11:56 -05:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-08-04 22:46:19 -06:00
2015-07-14 16:02:25 -04:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-05-19 09:30:29 +02:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-19 22:16:09 -06:00
2016-09-16 01:44:43 -06:00
2016-09-16 01:44:43 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2016-08-25 10:46:51 -06:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-07-30 13:25:33 -06:00
2016-07-08 14:49:48 -06:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-05-16 19:32:59 -06:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-06-14 20:38:58 -06:00
2016-05-19 18:26:42 -06:00
2016-03-31 10:31:30 -04:00
2016-06-16 14:06:26 -06:00
2016-06-14 19:50:26 -06:00
2016-03-27 08:47:43 +08:00
2016-05-11 16:38:50 +08:00
2016-07-08 14:05:15 -06:00
2016-08-23 18:12:25 -06:00
2016-09-01 17:05:23 -06:00
2016-09-14 14:43:55 +08:00
2016-08-23 18:13:08 -06:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-07-07 19:27:15 -06:00
2016-02-15 21:46:55 -07:00
2016-05-16 19:32:59 -06:00
2016-03-03 14:38:51 +08:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-21 21:02:08 +08:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-08-23 18:12:25 -06:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-08-23 18:12:25 -06:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-07-07 19:27:15 -06:00
2016-02-21 21:02:08 +08:00
2016-09-09 10:46:10 -06:00
2016-02-15 21:46:55 -07:00
2016-06-30 16:46:24 -06:00
2016-08-23 18:12:25 -06:00
2016-02-15 21:46:55 -07:00
2016-06-30 13:11:36 +08:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-05-16 19:32:59 -06:00
2016-02-15 21:46:55 -07:00
2016-05-17 18:57:18 +08:00
2016-02-21 21:02:08 +08:00
2016-02-15 21:46:55 -07:00
2016-09-11 12:33:43 -06:00
2016-09-02 16:35:01 -06:00
2016-06-16 14:06:26 -06:00
2016-03-11 12:06:41 -05:00
2016-02-15 21:46:55 -07:00
2016-04-27 08:15:37 +08:00
2016-05-09 10:46:40 -04:00
2016-06-08 09:30:04 -04:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-03-08 21:43:14 -07:00
2016-05-21 09:45:47 +08:00
2016-02-15 21:46:55 -07:00
2016-09-20 20:31:27 -06:00
2016-09-20 20:31:27 -06:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-05-05 12:04:22 -06:00
2016-05-05 20:38:33 +08:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-06-02 23:47:29 -06:00
2016-02-15 21:46:55 -07:00
2016-07-07 19:27:15 -06:00
2016-04-06 12:56:31 -04:00
2016-09-05 22:20:28 +08:00
2016-05-23 23:10:18 -06:00
2016-09-05 22:20:28 +08:00
2016-08-23 18:13:08 -06:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-06-08 17:22:46 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-07-26 12:53:54 -06:00
2016-03-31 10:31:30 -04:00
2016-03-31 10:31:30 -04:00
2016-06-16 14:06:26 -06:00
2016-06-16 14:06:26 -06:00
2016-02-15 21:46:55 -07:00
2016-09-09 17:06:15 +08:00
2016-02-15 21:46:55 -07:00
2016-06-30 13:11:36 +08:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2016-02-15 21:46:55 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-07-30 13:25:33 -06:00
2015-12-10 18:01:54 -07:00
2016-08-02 21:48:02 -06:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2015-12-10 18:01:54 -07:00
2016-08-23 18:12:25 -06:00
2016-02-15 21:46:55 -07:00
2016-08-23 18:13:08 -06:00
2016-08-23 18:12:25 -06:00
2015-12-10 18:01:54 -07:00