1//===- ThreadSafetyTIL.h ---------------------------------------*- C++ --*-===// 2// 3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4// See https://llvm.org/LICENSE.txt for license information. 5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6// 7//===----------------------------------------------------------------------===// 8// 9// This file defines the list of core opcodes for the Thread Safety 10// Typed Intermediate language. Please see ThreadSafetyTIL.h for more 11// information. 12// 13//===----------------------------------------------------------------------===// 14 15 16TIL_OPCODE_DEF(Future) 17TIL_OPCODE_DEF(Undefined) 18TIL_OPCODE_DEF(Wildcard) 19 20TIL_OPCODE_DEF(Literal) 21TIL_OPCODE_DEF(LiteralPtr) 22TIL_OPCODE_DEF(Variable) 23TIL_OPCODE_DEF(Function) 24TIL_OPCODE_DEF(SFunction) 25TIL_OPCODE_DEF(Code) 26TIL_OPCODE_DEF(Field) 27 28TIL_OPCODE_DEF(Apply) 29TIL_OPCODE_DEF(SApply) 30TIL_OPCODE_DEF(Project) 31 32TIL_OPCODE_DEF(Call) 33TIL_OPCODE_DEF(Alloc) 34TIL_OPCODE_DEF(Load) 35TIL_OPCODE_DEF(Store) 36TIL_OPCODE_DEF(ArrayIndex) 37TIL_OPCODE_DEF(ArrayAdd) 38 39TIL_OPCODE_DEF(UnaryOp) 40TIL_OPCODE_DEF(BinaryOp) 41TIL_OPCODE_DEF(Cast) 42 43TIL_OPCODE_DEF(SCFG) 44TIL_OPCODE_DEF(BasicBlock) 45TIL_OPCODE_DEF(Phi) 46 47// Terminator instructions 48TIL_OPCODE_DEF(Goto) 49TIL_OPCODE_DEF(Branch) 50TIL_OPCODE_DEF(Return) 51 52// pseudo-terms 53TIL_OPCODE_DEF(Identifier) 54TIL_OPCODE_DEF(IfThenElse) 55TIL_OPCODE_DEF(Let) 56 57