aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/Bitcode/LLVMBitCodes.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2007-04-24 07:03:08 +0000
committerChris Lattner <sabre@nondot.org>2007-04-24 07:03:08 +0000
commitc9c448ffa2bb7fe1bac80a7bc014740bb7b403fd (patch)
treea8331d8dc8a71fcd101f6afefcc064d1ea9ac9b1 /include/llvm/Bitcode/LLVMBitCodes.h
parent3a2b58f3adc5e9f9bffac7ce193f0570aa5a721f (diff)
downloadexternal_llvm-c9c448ffa2bb7fe1bac80a7bc014740bb7b403fd.zip
external_llvm-c9c448ffa2bb7fe1bac80a7bc014740bb7b403fd.tar.gz
external_llvm-c9c448ffa2bb7fe1bac80a7bc014740bb7b403fd.tar.bz2
add records for constant exprs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36393 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Bitcode/LLVMBitCodes.h')
-rw-r--r--include/llvm/Bitcode/LLVMBitCodes.h55
1 files changed, 46 insertions, 9 deletions
diff --git a/include/llvm/Bitcode/LLVMBitCodes.h b/include/llvm/Bitcode/LLVMBitCodes.h
index 939aa3d..27fbd2c 100644
--- a/include/llvm/Bitcode/LLVMBitCodes.h
+++ b/include/llvm/Bitcode/LLVMBitCodes.h
@@ -89,15 +89,52 @@ namespace bitc {
// The constants block (CONSTANTS_BLOCK_ID) describes emission for each
// constant and maintains an implicit current type value.
enum ConstantsSymtabCodes {
- CST_CODE_SETTYPE = 1, // SETTYPE: [typeid]
- CST_CODE_NULL = 2, // NULL
- CST_CODE_UNDEF = 3, // UNDEF
- CST_CODE_INTEGER = 4, // INTEGER: [intval]
- CST_CODE_WIDE_INTEGER = 5, // WIDE_INTEGER: [n, n x intval]
- CST_CODE_FLOAT = 6, // FLOAT: [fpval]
- CST_CODE_AGGREGATE = 7, // AGGREGATE: [n, n x value number]
- CST_CODE_CONSTEXPR = 8 // CONSTEXPR: [opcode, n, n x val#]
- // TODO: CE_BINOP ETC
+ CST_CODE_SETTYPE = 1, // SETTYPE: [typeid]
+ CST_CODE_NULL = 2, // NULL
+ CST_CODE_UNDEF = 3, // UNDEF
+ CST_CODE_INTEGER = 4, // INTEGER: [intval]
+ CST_CODE_WIDE_INTEGER = 5, // WIDE_INTEGER: [n, n x intval]
+ CST_CODE_FLOAT = 6, // FLOAT: [fpval]
+ CST_CODE_AGGREGATE = 7, // AGGREGATE: [n, n x value number]
+ CST_CODE_CE_BINOP = 8, // CE_BINOP: [opcode, opval, opval]
+ CST_CODE_CE_CAST = 9, // CE_CAST: [opcode, opty, opval]
+ CST_CODE_CE_GEP = 10, // CE_GEP: [n, n x operands]
+ CST_CODE_CE_SELECT = 11, // CE_SELECT: [opval, opval, opval]
+ CST_CODE_CE_EXTRACTELT = 12, // CE_EXTRACTELT: [opty, opval, opval]
+ CST_CODE_CE_INSERTELT = 13, // CE_INSERTELT: [opval, opval, opval]
+ CST_CODE_CE_SHUFFLEVEC = 14, // CE_SHUFFLEVEC: [opval, opval, opval]
+ CST_CODE_CE_CMP = 15 // CE_CMP: [opty, opval, opval, pred]
+ };
+
+ enum CastOpcodes {
+ CAST_TRUNC = 0,
+ CAST_ZEXT = 1,
+ CAST_SEXT = 2,
+ CAST_FPTOUI = 3,
+ CAST_FPTOSI = 4,
+ CAST_UITOFP = 5,
+ CAST_SITOFP = 6,
+ CAST_FPTRUNC = 7,
+ CAST_FPEXT = 8,
+ CAST_PTRTOINT = 9,
+ CAST_INTTOPTR = 10,
+ CAST_BITCAST = 11
+ };
+
+ enum BinaryOpcodes {
+ BINOP_ADD = 0,
+ BINOP_SUB = 1,
+ BINOP_MUL = 2,
+ BINOP_UDIV = 3,
+ BINOP_SDIV = 4, // overloaded for FP
+ BINOP_UREM = 5,
+ BINOP_SREM = 6, // overloaded for FP
+ BINOP_SHL = 7,
+ BINOP_LSHR = 8,
+ BINOP_ASHR = 9,
+ BINOP_AND = 10,
+ BINOP_OR = 11,
+ BINOP_XOR = 12
};
} // End bitc namespace