|
|
@@ -0,0 +1,237 @@ |
|
|
//===-- CVLeafTypes.def - All CodeView leaf types ---------------*- C++ -*-===// |
|
|
// |
|
|
// The LLVM Compiler Infrastructure |
|
|
// |
|
|
// This file is distributed under the University of Illinois Open Source |
|
|
// License. See LICENSE.TXT for details. |
|
|
// |
|
|
//===----------------------------------------------------------------------===// |
|
|
// |
|
|
// See LEAF_ENUM_e in cvinfo.h. This should match the constants there. |
|
|
// |
|
|
//===----------------------------------------------------------------------===// |
|
|
|
|
|
#ifndef SYMBOL_TYPE |
|
|
#define SYMBOL_TYPE(ename, value) |
|
|
#endif |
|
|
|
|
|
// 16 bit symbol types. Not very useful, provided only for reference. |
|
|
SYMBOL_TYPE(S_COMPILE , 0x0001) |
|
|
SYMBOL_TYPE(S_REGISTER_16t , 0x0002) |
|
|
SYMBOL_TYPE(S_CONSTANT_16t , 0x0003) |
|
|
SYMBOL_TYPE(S_UDT_16t , 0x0004) |
|
|
SYMBOL_TYPE(S_SSEARCH , 0x0005) |
|
|
SYMBOL_TYPE(S_END , 0x0006) |
|
|
SYMBOL_TYPE(S_SKIP , 0x0007) |
|
|
SYMBOL_TYPE(S_CVRESERVE , 0x0008) |
|
|
SYMBOL_TYPE(S_OBJNAME_ST , 0x0009) |
|
|
SYMBOL_TYPE(S_ENDARG , 0x000a) |
|
|
SYMBOL_TYPE(S_COBOLUDT_16t , 0x000b) |
|
|
SYMBOL_TYPE(S_MANYREG_16t , 0x000c) |
|
|
SYMBOL_TYPE(S_RETURN , 0x000d) |
|
|
SYMBOL_TYPE(S_ENTRYTHIS , 0x000e) |
|
|
SYMBOL_TYPE(S_BPREL16 , 0x0100) |
|
|
SYMBOL_TYPE(S_LDATA16 , 0x0101) |
|
|
SYMBOL_TYPE(S_GDATA16 , 0x0102) |
|
|
SYMBOL_TYPE(S_PUB16 , 0x0103) |
|
|
SYMBOL_TYPE(S_LPROC16 , 0x0104) |
|
|
SYMBOL_TYPE(S_GPROC16 , 0x0105) |
|
|
SYMBOL_TYPE(S_THUNK16 , 0x0106) |
|
|
SYMBOL_TYPE(S_BLOCK16 , 0x0107) |
|
|
SYMBOL_TYPE(S_WITH16 , 0x0108) |
|
|
SYMBOL_TYPE(S_LABEL16 , 0x0109) |
|
|
SYMBOL_TYPE(S_CEXMODEL16 , 0x010a) |
|
|
SYMBOL_TYPE(S_VFTABLE16 , 0x010b) |
|
|
SYMBOL_TYPE(S_REGREL16 , 0x010c) |
|
|
SYMBOL_TYPE(S_BPREL32_16t , 0x0200) |
|
|
SYMBOL_TYPE(S_LDATA32_16t , 0x0201) |
|
|
SYMBOL_TYPE(S_GDATA32_16t , 0x0202) |
|
|
SYMBOL_TYPE(S_PUB32_16t , 0x0203) |
|
|
SYMBOL_TYPE(S_LPROC32_16t , 0x0204) |
|
|
SYMBOL_TYPE(S_GPROC32_16t , 0x0205) |
|
|
SYMBOL_TYPE(S_THUNK32_ST , 0x0206) |
|
|
SYMBOL_TYPE(S_BLOCK32_ST , 0x0207) |
|
|
SYMBOL_TYPE(S_WITH32_ST , 0x0208) |
|
|
SYMBOL_TYPE(S_LABEL32_ST , 0x0209) |
|
|
SYMBOL_TYPE(S_CEXMODEL32 , 0x020a) |
|
|
SYMBOL_TYPE(S_VFTABLE32_16t , 0x020b) |
|
|
SYMBOL_TYPE(S_REGREL32_16t , 0x020c) |
|
|
SYMBOL_TYPE(S_LTHREAD32_16t , 0x020d) |
|
|
SYMBOL_TYPE(S_GTHREAD32_16t , 0x020e) |
|
|
SYMBOL_TYPE(S_SLINK32 , 0x020f) |
|
|
SYMBOL_TYPE(S_LPROCMIPS_16t , 0x0300) |
|
|
SYMBOL_TYPE(S_GPROCMIPS_16t , 0x0301) |
|
|
SYMBOL_TYPE(S_PROCREF_ST , 0x0400) |
|
|
SYMBOL_TYPE(S_DATAREF_ST , 0x0401) |
|
|
SYMBOL_TYPE(S_ALIGN , 0x0402) |
|
|
SYMBOL_TYPE(S_LPROCREF_ST , 0x0403) |
|
|
SYMBOL_TYPE(S_OEM , 0x0404) |
|
|
|
|
|
// All post 16 bit symbol types have the 0x1000 bit set. |
|
|
SYMBOL_TYPE(S_TI16_MAX , 0x1000) |
|
|
|
|
|
// Mostly unused "start" symbol types. |
|
|
SYMBOL_TYPE(S_REGISTER_ST , 0x1001) |
|
|
SYMBOL_TYPE(S_CONSTANT_ST , 0x1002) |
|
|
SYMBOL_TYPE(S_UDT_ST , 0x1003) |
|
|
SYMBOL_TYPE(S_COBOLUDT_ST , 0x1004) |
|
|
SYMBOL_TYPE(S_MANYREG_ST , 0x1005) |
|
|
SYMBOL_TYPE(S_BPREL32_ST , 0x1006) |
|
|
SYMBOL_TYPE(S_LDATA32_ST , 0x1007) |
|
|
SYMBOL_TYPE(S_GDATA32_ST , 0x1008) |
|
|
SYMBOL_TYPE(S_PUB32_ST , 0x1009) |
|
|
SYMBOL_TYPE(S_LPROC32_ST , 0x100a) |
|
|
SYMBOL_TYPE(S_GPROC32_ST , 0x100b) |
|
|
SYMBOL_TYPE(S_VFTABLE32 , 0x100c) |
|
|
SYMBOL_TYPE(S_REGREL32_ST , 0x100d) |
|
|
SYMBOL_TYPE(S_LTHREAD32_ST , 0x100e) |
|
|
SYMBOL_TYPE(S_GTHREAD32_ST , 0x100f) |
|
|
SYMBOL_TYPE(S_LPROCMIPS_ST , 0x1010) |
|
|
SYMBOL_TYPE(S_GPROCMIPS_ST , 0x1011) |
|
|
|
|
|
// Information about the frame layout of a procedure. |
|
|
SYMBOL_TYPE(S_FRAMEPROC , 0x1012) |
|
|
|
|
|
SYMBOL_TYPE(S_COMPILE2_ST , 0x1013) |
|
|
SYMBOL_TYPE(S_MANYREG2_ST , 0x1014) |
|
|
SYMBOL_TYPE(S_LPROCIA64_ST , 0x1015) |
|
|
SYMBOL_TYPE(S_GPROCIA64_ST , 0x1016) |
|
|
SYMBOL_TYPE(S_LOCALSLOT_ST , 0x1017) |
|
|
SYMBOL_TYPE(S_PARAMSLOT_ST , 0x1018) |
|
|
SYMBOL_TYPE(S_ANNOTATION , 0x1019) |
|
|
SYMBOL_TYPE(S_GMANPROC_ST , 0x101a) |
|
|
SYMBOL_TYPE(S_LMANPROC_ST , 0x101b) |
|
|
SYMBOL_TYPE(S_RESERVED1 , 0x101c) |
|
|
SYMBOL_TYPE(S_RESERVED2 , 0x101d) |
|
|
SYMBOL_TYPE(S_RESERVED3 , 0x101e) |
|
|
SYMBOL_TYPE(S_RESERVED4 , 0x101f) |
|
|
SYMBOL_TYPE(S_LMANDATA_ST , 0x1020) |
|
|
SYMBOL_TYPE(S_GMANDATA_ST , 0x1021) |
|
|
SYMBOL_TYPE(S_MANFRAMEREL_ST, 0x1022) |
|
|
SYMBOL_TYPE(S_MANREGISTER_ST, 0x1023) |
|
|
SYMBOL_TYPE(S_MANSLOT_ST , 0x1024) |
|
|
SYMBOL_TYPE(S_MANMANYREG_ST , 0x1025) |
|
|
SYMBOL_TYPE(S_MANREGREL_ST , 0x1026) |
|
|
SYMBOL_TYPE(S_MANMANYREG2_ST, 0x1027) |
|
|
SYMBOL_TYPE(S_MANTYPREF , 0x1028) |
|
|
SYMBOL_TYPE(S_UNAMESPACE_ST , 0x1029) |
|
|
|
|
|
// End of S_*_ST symbols, which do not appear to be generated by modern |
|
|
// compilers. |
|
|
SYMBOL_TYPE(S_ST_MAX , 0x1100) |
|
|
|
|
|
SYMBOL_TYPE(S_OBJNAME , 0x1101) |
|
|
SYMBOL_TYPE(S_THUNK32 , 0x1102) |
|
|
SYMBOL_TYPE(S_BLOCK32 , 0x1103) |
|
|
SYMBOL_TYPE(S_WITH32 , 0x1104) |
|
|
SYMBOL_TYPE(S_LABEL32 , 0x1105) |
|
|
SYMBOL_TYPE(S_REGISTER , 0x1106) |
|
|
SYMBOL_TYPE(S_CONSTANT , 0x1107) |
|
|
SYMBOL_TYPE(S_UDT , 0x1108) |
|
|
SYMBOL_TYPE(S_COBOLUDT , 0x1109) |
|
|
SYMBOL_TYPE(S_MANYREG , 0x110a) |
|
|
SYMBOL_TYPE(S_BPREL32 , 0x110b) |
|
|
SYMBOL_TYPE(S_LDATA32 , 0x110c) |
|
|
SYMBOL_TYPE(S_GDATA32 , 0x110d) |
|
|
SYMBOL_TYPE(S_PUB32 , 0x110e) |
|
|
SYMBOL_TYPE(S_LPROC32 , 0x110f) |
|
|
SYMBOL_TYPE(S_GPROC32 , 0x1110) |
|
|
SYMBOL_TYPE(S_REGREL32 , 0x1111) |
|
|
SYMBOL_TYPE(S_LTHREAD32 , 0x1112) |
|
|
SYMBOL_TYPE(S_GTHREAD32 , 0x1113) |
|
|
SYMBOL_TYPE(S_LPROCMIPS , 0x1114) |
|
|
SYMBOL_TYPE(S_GPROCMIPS , 0x1115) |
|
|
SYMBOL_TYPE(S_COMPILE2 , 0x1116) |
|
|
SYMBOL_TYPE(S_MANYREG2 , 0x1117) |
|
|
SYMBOL_TYPE(S_LPROCIA64 , 0x1118) |
|
|
SYMBOL_TYPE(S_GPROCIA64 , 0x1119) |
|
|
SYMBOL_TYPE(S_LOCALSLOT , 0x111a) |
|
|
SYMBOL_TYPE(S_PARAMSLOT , 0x111b) |
|
|
|
|
|
// Managed code symbols. |
|
|
SYMBOL_TYPE(S_LMANDATA , 0x111c) |
|
|
SYMBOL_TYPE(S_GMANDATA , 0x111d) |
|
|
SYMBOL_TYPE(S_MANFRAMEREL , 0x111e) |
|
|
SYMBOL_TYPE(S_MANREGISTER , 0x111f) |
|
|
SYMBOL_TYPE(S_MANSLOT , 0x1120) |
|
|
SYMBOL_TYPE(S_MANMANYREG , 0x1121) |
|
|
SYMBOL_TYPE(S_MANREGREL , 0x1122) |
|
|
SYMBOL_TYPE(S_MANMANYREG2 , 0x1123) |
|
|
SYMBOL_TYPE(S_UNAMESPACE , 0x1124) |
|
|
SYMBOL_TYPE(S_PROCREF , 0x1125) |
|
|
SYMBOL_TYPE(S_DATAREF , 0x1126) |
|
|
SYMBOL_TYPE(S_LPROCREF , 0x1127) |
|
|
SYMBOL_TYPE(S_ANNOTATIONREF , 0x1128) |
|
|
SYMBOL_TYPE(S_TOKENREF , 0x1129) |
|
|
SYMBOL_TYPE(S_GMANPROC , 0x112a) |
|
|
SYMBOL_TYPE(S_LMANPROC , 0x112b) |
|
|
SYMBOL_TYPE(S_TRAMPOLINE , 0x112c) |
|
|
SYMBOL_TYPE(S_MANCONSTANT , 0x112d) |
|
|
SYMBOL_TYPE(S_ATTR_FRAMEREL , 0x112e) |
|
|
SYMBOL_TYPE(S_ATTR_REGISTER , 0x112f) |
|
|
SYMBOL_TYPE(S_ATTR_REGREL , 0x1130) |
|
|
SYMBOL_TYPE(S_ATTR_MANYREG , 0x1131) |
|
|
|
|
|
|
|
|
SYMBOL_TYPE(S_SEPCODE , 0x1132) |
|
|
SYMBOL_TYPE(S_LOCAL_2005 , 0x1133) |
|
|
SYMBOL_TYPE(S_DEFRANGE_2005 , 0x1134) |
|
|
SYMBOL_TYPE(S_DEFRANGE2_2005, 0x1135) |
|
|
SYMBOL_TYPE(S_SECTION , 0x1136) |
|
|
SYMBOL_TYPE(S_COFFGROUP , 0x1137) |
|
|
SYMBOL_TYPE(S_EXPORT , 0x1138) |
|
|
SYMBOL_TYPE(S_CALLSITEINFO , 0x1139) |
|
|
SYMBOL_TYPE(S_FRAMECOOKIE , 0x113a) |
|
|
SYMBOL_TYPE(S_DISCARDED , 0x113b) |
|
|
SYMBOL_TYPE(S_COMPILE3 , 0x113c) |
|
|
SYMBOL_TYPE(S_ENVBLOCK , 0x113d) |
|
|
SYMBOL_TYPE(S_LOCAL , 0x113e) |
|
|
SYMBOL_TYPE(S_DEFRANGE , 0x113f) |
|
|
SYMBOL_TYPE(S_DEFRANGE_SUBFIELD, 0x1140) |
|
|
SYMBOL_TYPE(S_DEFRANGE_REGISTER, 0x1141) |
|
|
SYMBOL_TYPE(S_DEFRANGE_FRAMEPOINTER_REL, 0x1142) |
|
|
SYMBOL_TYPE(S_DEFRANGE_SUBFIELD_REGISTER, 0x1143) |
|
|
SYMBOL_TYPE(S_DEFRANGE_FRAMEPOINTER_REL_FULL_SCOPE, 0x1144) |
|
|
SYMBOL_TYPE(S_DEFRANGE_REGISTER_REL, 0x1145) |
|
|
|
|
|
// Current symbol types for most procedures as of this writing. |
|
|
SYMBOL_TYPE(S_LPROC32_ID , 0x1146) |
|
|
SYMBOL_TYPE(S_GPROC32_ID , 0x1147) |
|
|
SYMBOL_TYPE(S_LPROCMIPS_ID , 0x1148) |
|
|
SYMBOL_TYPE(S_GPROCMIPS_ID , 0x1149) |
|
|
SYMBOL_TYPE(S_LPROCIA64_ID , 0x114a) |
|
|
SYMBOL_TYPE(S_GPROCIA64_ID , 0x114b) |
|
|
|
|
|
SYMBOL_TYPE(S_BUILDINFO , 0x114c) |
|
|
|
|
|
// Inlined call site delimiters. |
|
|
SYMBOL_TYPE(S_INLINESITE , 0x114d) |
|
|
SYMBOL_TYPE(S_INLINESITE_END , 0x114e) |
|
|
|
|
|
// Procedure info end delimiter. |
|
|
SYMBOL_TYPE(S_PROC_ID_END , 0x114f) |
|
|
|
|
|
SYMBOL_TYPE(S_DEFRANGE_HLSL , 0x1150) |
|
|
SYMBOL_TYPE(S_GDATA_HLSL , 0x1151) |
|
|
SYMBOL_TYPE(S_LDATA_HLSL , 0x1152) |
|
|
SYMBOL_TYPE(S_FILESTATIC , 0x1153) |
|
|
SYMBOL_TYPE(S_LOCAL_DPC_GROUPSHARED, 0x1154) |
|
|
SYMBOL_TYPE(S_LPROC32_DPC , 0x1155) |
|
|
SYMBOL_TYPE(S_LPROC32_DPC_ID , 0x1156) |
|
|
SYMBOL_TYPE(S_DEFRANGE_DPC_PTR_TAG, 0x1157) |
|
|
SYMBOL_TYPE(S_DPC_SYM_TAG_MAP, 0x1158) |
|
|
SYMBOL_TYPE(S_ARMSWITCHTABLE , 0x1159) |
|
|
SYMBOL_TYPE(S_CALLEES , 0x115a) |
|
|
SYMBOL_TYPE(S_CALLERS , 0x115b) |
|
|
SYMBOL_TYPE(S_POGODATA , 0x115c) |
|
|
SYMBOL_TYPE(S_INLINESITE2 , 0x115d) |
|
|
SYMBOL_TYPE(S_HEAPALLOCSITE , 0x115e) |
|
|
SYMBOL_TYPE(S_MOD_TYPEREF , 0x115f) |
|
|
SYMBOL_TYPE(S_REF_MINIPDB , 0x1160) |
|
|
SYMBOL_TYPE(S_PDBMAP , 0x1161) |
|
|
SYMBOL_TYPE(S_GDATA_HLSL32 , 0x1162) |
|
|
SYMBOL_TYPE(S_LDATA_HLSL32 , 0x1163) |
|
|
SYMBOL_TYPE(S_GDATA_HLSL32_EX, 0x1164) |
|
|
SYMBOL_TYPE(S_LDATA_HLSL32_EX, 0x1165) |
|
|
|
|
|
#undef SYMBOL_TYPE |