//ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//POSSIBILITY OF SUCH DAMAGE.
-//
-// Author: Dejan Mircevski, Google
-//
-
// The SPIR-V spec requires code blocks to appear in an order satisfying the
// dominator-tree direction (ie, dominator before the dominated). This is,
// actually, easy to achieve: any pre-order CFG traversal algorithm will do it.
//POSSIBILITY OF SUCH DAMAGE.
//
-// Author: John Kessenich, LunarG
-//
-
-//
// Helper for making SPIR-V IR. Generally, this is documented in the header
// SpvBuilder.h.
//
//POSSIBILITY OF SUCH DAMAGE.
//
-// Author: John Kessenich, LunarG
-//
-
-//
// "Builder" is an interface to fully build SPIR-V IR. Allocate one of
// these to build (a thread safe) internal SPIR-V representation (IR),
// and then dump it as a binary stream according to the SPIR-V specification.
//POSSIBILITY OF SUCH DAMAGE.
//
-// Author: John Kessenich, LunarG
-//
-
-//
// Disassembler for SPIR-V.
//
//POSSIBILITY OF SUCH DAMAGE.
//
-// Author: John Kessenich, LunarG
-//
-
-//
// Disassembler for SPIR-V.
//
//POSSIBILITY OF SUCH DAMAGE.
//
-// Author: John Kessenich, LunarG
-//
-
-//
// 1) Programatically fill in instruction/operand information.
// This can be used for disassembly, printing documentation, etc.
//
//POSSIBILITY OF SUCH DAMAGE.
//
-// Author: John Kessenich, LunarG
-//
-
-//
// Parameterize the SPIR-V enumerants.
//
//ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//POSSIBILITY OF SUCH DAMAGE.
-//
-// Author: John Kessenich, LunarG
-//
-
// SPIRV-IR
//
// Simple in-memory representation (IR) of SPIRV. Just for holding
// If you only want post-visits, explicitly turn off preVisit (and inVisit)
// and turn on postVisit.
//
+// In general, for the visit*() methods, return true from interior nodes
+// to have the traversal continue on to children.
+//
+// If you process children yourself, or don't want them processed, return false.
+//
class TIntermTraverser {
public:
POOL_ALLOCATOR_NEW_DELETE(glslang::GetThreadPoolAllocator())
//
// Visit the node after the children, if requested and the traversal
- // hasn't been cancelled yet.
+ // hasn't been canceled yet.
//
if (visit && it->postVisit)
it->visitBinary(EvPostVisit, this);