1*e5dd7070Spatrick //===--- Opcode.h - Opcodes for the constexpr VM ----------------*- C++ -*-===// 2*e5dd7070Spatrick // 3*e5dd7070Spatrick // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*e5dd7070Spatrick // See https://llvm.org/LICENSE.txt for license information. 5*e5dd7070Spatrick // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*e5dd7070Spatrick // 7*e5dd7070Spatrick //===----------------------------------------------------------------------===// 8*e5dd7070Spatrick // 9*e5dd7070Spatrick // Defines all opcodes executed by the VM and emitted by the compiler. 10*e5dd7070Spatrick // 11*e5dd7070Spatrick //===----------------------------------------------------------------------===// 12*e5dd7070Spatrick 13*e5dd7070Spatrick #ifndef LLVM_CLANG_AST_INTERP_OPCODE_H 14*e5dd7070Spatrick #define LLVM_CLANG_AST_INTERP_OPCODE_H 15*e5dd7070Spatrick 16*e5dd7070Spatrick #include <cstdint> 17*e5dd7070Spatrick 18*e5dd7070Spatrick namespace clang { 19*e5dd7070Spatrick namespace interp { 20*e5dd7070Spatrick 21*e5dd7070Spatrick enum Opcode : uint32_t { 22*e5dd7070Spatrick #define GET_OPCODE_NAMES 23*e5dd7070Spatrick #include "Opcodes.inc" 24*e5dd7070Spatrick #undef GET_OPCODE_NAMES 25*e5dd7070Spatrick }; 26*e5dd7070Spatrick 27*e5dd7070Spatrick } // namespace interp 28*e5dd7070Spatrick } // namespace clang 29*e5dd7070Spatrick 30*e5dd7070Spatrick #endif 31