Track uses and defs during parsing.
authorDejan Mircevski <deki@google.com>
Fri, 15 Jan 2016 16:25:11 +0000 (11:25 -0500)
committerDavid Neto <dneto@google.com>
Wed, 20 Jan 2016 22:00:58 +0000 (17:00 -0500)
commit961f5dc54408b1516b9e4d85ee1fb4891b903f61
treefc7417697b032295a346e7dcbd6c92ac9ca1b941
parent383c83729e608c3ce815d7d19f44fc5b729092c5
Track uses and defs during parsing.

Replace two other, imperfect mechanisms for use-def tracking.

Use ValidationState_t::entry_points to track entry points.

Concentrate undefined-ID diagnostics in a single place.

Move validate_types.h content into validate.h due to increased
inter-dependency.

Track uses of all IDs: TYPE_ID, SCOPE_ID, ...

Also update some blurbs.

Fix entry-point accumulation and move it outside ProcessIds().

Remove validate_types.h from CMakeLists.txt.

Blurb for spvIsIdType.

Remove redundant diagnostics for undefined IDs.

Join "can not" and reformat.
14 files changed:
CMakeLists.txt
source/operand.cpp
source/operand.h
source/validate.cpp
source/validate.h
source/validate_cfg.cpp
source/validate_id.cpp
source/validate_instruction.cpp
source/validate_layout.cpp
source/validate_passes.h
source/validate_ssa.cpp
source/validate_types.cpp
source/validate_types.h [deleted file]
test/ValidateID.cpp