1 // Copyright 2016 the V8 project authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef V8_WASM_SWITCH_LOGIC_H 6 #define V8_WASM_SWITCH_LOGIC_H 7 8 #include "src/zone-containers.h" 9 #include "src/zone.h" 10 11 namespace v8 { 12 namespace internal { 13 namespace wasm { 14 15 struct CaseNode : public ZoneObject { 16 const int begin; 17 const int end; 18 CaseNode* left; 19 CaseNode* right; CaseNodeCaseNode20 CaseNode(int begin, int end) : begin(begin), end(end) { 21 left = nullptr; 22 right = nullptr; 23 } 24 }; 25 26 CaseNode* OrderCases(ZoneVector<int>* cases, Zone* zone); 27 } // namespace wasm 28 } // namespace internal 29 } // namespace v8 30 31 #endif 32