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