Function and block layout checks. very basic CFG.
authorUmar Arshad <umar@arrayfire.com>
Wed, 16 Dec 2015 02:44:21 +0000 (21:44 -0500)
committerDavid Neto <dneto@google.com>
Wed, 13 Jan 2016 15:06:58 +0000 (10:06 -0500)
commitc74138597608777738c0aa956ae803feefba6cf3
tree085a127bfc8067d19fe4deacb8d7ca95dda58f3a
parentca50510ad4c7de3667289f3ea2d18a1b7f210976
Function and block layout checks. very basic CFG.

This adds function and block layout checks to the validator. Very
basic CFG code has been added to make sure labels and branches
are correctly ordered.

Also:
* MemoryModel and Variable instruction checks/tests
* Use spvCheckReturn instead of CHECK_RESULT
* Fix invalid SSA tests
* Created libspirv::spvResultToString in diagnostic.h
* Documented various functions and classes
* Fixed error messages
* Fixed using declaration for FunctionDecl enum class
source/diagnostic.cpp
source/diagnostic.h
source/validate.cpp
source/validate_types.cpp
source/validate_types.h
test/Validate.Layout.cpp
test/Validate.SSA.cpp
test/ValidateFixtures.cpp
test/ValidateFixtures.h