13#include <featureTests.h>
14#if defined(ROSE_ENABLE_BINARY_ANALYSIS)
15#include "ROSETTA_macros.h"
17#include "AstNodeClass.h"
21DOCUMENTATION_should_never_be_defined;
25#define DECLARE_LEAF_CLASS(CLASS_WITHOUT_Sg)
26#define DECLARE_LEAF_CLASS2(CLASS_WITHOUT_Sg, TAG)
28#define DECLARE_LEAF_CLASS(CLASS_WITHOUT_Sg) \
29 NEW_TERMINAL_MACRO(CLASS_WITHOUT_Sg, #CLASS_WITHOUT_Sg, #CLASS_WITHOUT_Sg "Tag"); \
30 CLASS_WITHOUT_Sg.setCppCondition("!defined(DOCUMENTATION)");\
31 CLASS_WITHOUT_Sg.setAutomaticGenerationOfConstructor(false);\
32 CLASS_WITHOUT_Sg.setAutomaticGenerationOfDestructor(false)
33#define DECLARE_LEAF_CLASS2(CLASS_WITHOUT_Sg, TAG) \
34 NEW_TERMINAL_MACRO(CLASS_WITHOUT_Sg, #CLASS_WITHOUT_Sg, #TAG); \
35 CLASS_WITHOUT_Sg.setCppCondition("!defined(DOCUMENTATION)");\
36 CLASS_WITHOUT_Sg.setAutomaticGenerationOfConstructor(false);\
37 CLASS_WITHOUT_Sg.setAutomaticGenerationOfDestructor(false)
41#define DECLARE_HEADERS(CLASS_WITHOUT_Sg)
43#define DECLARE_HEADERS(CLASS_WITHOUT_Sg) \
44 CLASS_WITHOUT_Sg.setPredeclarationString("Sg" #CLASS_WITHOUT_Sg "_HEADERS", \
45 ROSE_AUTOMAKE_ABSOLUTE_PATH_TOP_SRCDIR + "/src/ROSETTA/src/binaryInstruction.C")
49#define DECLARE_OTHERS(CLASS_WITHOUT_Sg)
51#define DECLARE_OTHERS(CLASS_WITHOUT_Sg) \
52 CLASS_WITHOUT_Sg.setFunctionPrototype("Sg" #CLASS_WITHOUT_Sg "_OTHERS", \
53 ROSE_AUTOMAKE_ABSOLUTE_PATH_TOP_SRCDIR + "/src/ROSETTA/src/binaryInstruction.C")
57#define IS_SERIALIZABLE()
59#define IS_SERIALIZABLE(CLASS_WITHOUT_Sg) \
60 CLASS_WITHOUT_Sg.isBoostSerializable(true)
99void Grammar::setUpBinaryInstructions() {
107DECLARE_LEAF_CLASS(AsmX86Instruction);
108IS_SERIALIZABLE(AsmX86Instruction);
111AsmX86Instruction.useSmallHeader(
true);
114DECLARE_HEADERS(AsmX86Instruction);
115#if defined(SgAsmX86Instruction_HEADERS) || defined(DOCUMENTATION)
116#include <Rose/BinaryAnalysis/BasicTypes.h>
117#include <Rose/BinaryAnalysis/InstructionEnumsX86.h>
126 AsmX86Instruction.setDataPrototype(
127 "Rose::BinaryAnalysis::X86InstructionKind",
"kind",
"= Rose::BinaryAnalysis::x86_unknown_instruction",
128 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
132 AsmX86Instruction.setDataPrototype(
133 "Rose::BinaryAnalysis::X86InstructionSize",
"baseSize",
"= Rose::BinaryAnalysis::x86_insnsize_none",
134 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
138 AsmX86Instruction.setDataPrototype(
139 "Rose::BinaryAnalysis::X86InstructionSize",
"operandSize",
"= Rose::BinaryAnalysis::x86_insnsize_none",
140 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
144 AsmX86Instruction.setDataPrototype(
145 "Rose::BinaryAnalysis::X86InstructionSize",
"addressSize",
"= Rose::BinaryAnalysis::x86_insnsize_none",
146 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
150 AsmX86Instruction.setDataPrototype(
151 "bool",
"lockPrefix",
"= false",
152 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
156 AsmX86Instruction.setDataPrototype(
157 "Rose::BinaryAnalysis::X86RepeatPrefix",
"repeatPrefix",
"= Rose::BinaryAnalysis::x86_repeat_none",
158 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
162 AsmX86Instruction.setDataPrototype(
163 "Rose::BinaryAnalysis::X86BranchPrediction",
"branchPrediction",
"= Rose::BinaryAnalysis::x86_branch_prediction_none",
164 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
168 AsmX86Instruction.setDataPrototype(
169 "Rose::BinaryAnalysis::X86SegmentRegister",
"segmentOverride",
"= Rose::BinaryAnalysis::x86_segreg_none",
170 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
173 DECLARE_OTHERS(AsmX86Instruction);
174#if defined(SgAsmX86Instruction_OTHERS) || defined(DOCUMENTATION)
177#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
179 friend class boost::serialization::access;
182 void serialize(S &s,
const unsigned ) {
185 s & BOOST_SERIALIZATION_NVP(p_kind);
186 s & BOOST_SERIALIZATION_NVP(p_baseSize);
187 s & BOOST_SERIALIZATION_NVP(p_operandSize);
188 s & BOOST_SERIALIZATION_NVP(p_addressSize);
189 s & BOOST_SERIALIZATION_NVP(p_lockPrefix);
190 s & BOOST_SERIALIZATION_NVP(p_repeatPrefix);
191 s & BOOST_SERIALIZATION_NVP(p_branchPrediction);
192 s & BOOST_SERIALIZATION_NVP(p_segmentOverride);
304 uint8_t
const& architectureId,
306 Rose::BinaryAnalysis::X86InstructionSize
const& baseSize,
307 Rose::BinaryAnalysis::X86InstructionSize
const& operandSize,
308 Rose::BinaryAnalysis::X86InstructionSize
const& addressSize);
328DECLARE_LEAF_CLASS(AsmVoidType);
329IS_SERIALIZABLE(AsmVoidType);
332AsmVoidType.useSmallHeader(
true);
340 DECLARE_OTHERS(AsmVoidType);
341#if defined(SgAsmVoidType_OTHERS) || defined(DOCUMENTATION)
344#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
346 friend class boost::serialization::access;
349 void serialize(S &s,
const unsigned ) {
351 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmType);
386DECLARE_LEAF_CLASS(AsmVectorType);
387IS_SERIALIZABLE(AsmVectorType);
390AsmVectorType.useSmallHeader(
true);
399 AsmVectorType.setDataPrototype(
400 "size_t",
"nElmts",
"= 0",
401 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
405 AsmVectorType.setDataPrototype(
406 "SgAsmType*",
"elmtType",
"= nullptr",
407 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
410 DECLARE_OTHERS(AsmVectorType);
411#if defined(SgAsmVectorType_OTHERS) || defined(DOCUMENTATION)
414#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
416 friend class boost::serialization::access;
419 void serialize(S &s,
const unsigned ) {
421 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmType);
422 s & BOOST_SERIALIZATION_NVP(p_nElmts);
423 s & BOOST_SERIALIZATION_NVP(p_elmtType);
450 virtual void check()
const override;
479DECLARE_LEAF_CLASS(AsmUserInstruction);
480IS_SERIALIZABLE(AsmUserInstruction);
483AsmUserInstruction.useSmallHeader(
true);
496 AsmUserInstruction.setDataPrototype(
497 "unsigned",
"kind",
"= 0",
498 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
501 DECLARE_OTHERS(AsmUserInstruction);
502#if defined(SgAsmUserInstruction_OTHERS) || defined(DOCUMENTATION)
505#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
507 friend class boost::serialization::access;
510 void serialize(S &s,
const unsigned ) {
513 s & BOOST_SERIALIZATION_NVP(p_kind);
541 uint8_t
const& architectureId,
542 unsigned const& kind);
562DECLARE_LEAF_CLASS(AsmUnaryUnsignedExtend);
563IS_SERIALIZABLE(AsmUnaryUnsignedExtend);
566AsmUnaryUnsignedExtend.useSmallHeader(
true);
578 DECLARE_OTHERS(AsmUnaryUnsignedExtend);
579#if defined(SgAsmUnaryUnsignedExtend_OTHERS) || defined(DOCUMENTATION)
582#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
584 friend class boost::serialization::access;
587 void serialize(S &s,
const unsigned ) {
624DECLARE_LEAF_CLASS(AsmUnaryTruncate);
625IS_SERIALIZABLE(AsmUnaryTruncate);
628AsmUnaryTruncate.useSmallHeader(
true);
640 DECLARE_OTHERS(AsmUnaryTruncate);
641#if defined(SgAsmUnaryTruncate_OTHERS) || defined(DOCUMENTATION)
644#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
646 friend class boost::serialization::access;
649 void serialize(S &s,
const unsigned ) {
686DECLARE_LEAF_CLASS(AsmUnarySignedExtend);
687IS_SERIALIZABLE(AsmUnarySignedExtend);
690AsmUnarySignedExtend.useSmallHeader(
true);
702 DECLARE_OTHERS(AsmUnarySignedExtend);
703#if defined(SgAsmUnarySignedExtend_OTHERS) || defined(DOCUMENTATION)
706#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
708 friend class boost::serialization::access;
711 void serialize(S &s,
const unsigned ) {
748DECLARE_LEAF_CLASS(AsmUnaryRrx);
749IS_SERIALIZABLE(AsmUnaryRrx);
752AsmUnaryRrx.useSmallHeader(
true);
755DECLARE_HEADERS(AsmUnaryRrx);
756#if defined(SgAsmUnaryRrx_HEADERS) || defined(DOCUMENTATION)
764 DECLARE_OTHERS(AsmUnaryRrx);
765#if defined(SgAsmUnaryRrx_OTHERS) || defined(DOCUMENTATION)
768#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
770 friend class boost::serialization::access;
773 void serialize(S &s,
const unsigned ) {
810DECLARE_LEAF_CLASS(AsmUnaryPlus);
811IS_SERIALIZABLE(AsmUnaryPlus);
814AsmUnaryPlus.useSmallHeader(
true);
822 DECLARE_OTHERS(AsmUnaryPlus);
823#if defined(SgAsmUnaryPlus_OTHERS) || defined(DOCUMENTATION)
826#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
828 friend class boost::serialization::access;
831 void serialize(S &s,
const unsigned ) {
868DECLARE_LEAF_CLASS(AsmUnaryMinus);
869IS_SERIALIZABLE(AsmUnaryMinus);
872AsmUnaryMinus.useSmallHeader(
true);
880 DECLARE_OTHERS(AsmUnaryMinus);
881#if defined(SgAsmUnaryMinus_OTHERS) || defined(DOCUMENTATION)
884#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
886 friend class boost::serialization::access;
889 void serialize(S &s,
const unsigned ) {
927AstNodeClass& AsmUnaryExpression = nonTerminalConstructor(
928 "AsmUnaryExpression",
930 "AsmUnaryExpression",
931 "AsmUnaryExpressionTag",
932 SubclassListBuilder()
936 | AsmUnarySignedExtend
938 | AsmUnaryUnsignedExtend
940assert(AsmUnaryExpression.associatedGrammar !=
nullptr);
941AsmUnaryExpression.setCppCondition(
"!defined(DOCUMENTATION)");
942AsmUnaryExpression.isBoostSerializable(
true);
943AsmUnaryExpression.setAutomaticGenerationOfConstructor(
false);
944AsmUnaryExpression.setAutomaticGenerationOfDestructor(
false);
948AsmUnaryExpression.useSmallHeader(
true);
957 AsmUnaryExpression.setDataPrototype(
958 "SgAsmExpression*",
"operand",
"= nullptr",
959 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
962 DECLARE_OTHERS(AsmUnaryExpression);
963#if defined(SgAsmUnaryExpression_OTHERS) || defined(DOCUMENTATION)
966#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
968 friend class boost::serialization::access;
971 void serialize(S &s,
const unsigned ) {
974 s & BOOST_SERIALIZATION_NVP(p_operand);
1017DECLARE_LEAF_CLASS(AsmSynthesizedFieldDeclaration);
1018IS_SERIALIZABLE(AsmSynthesizedFieldDeclaration);
1020#ifndef DOCUMENTATION
1021AsmSynthesizedFieldDeclaration.useSmallHeader(
true);
1024DECLARE_HEADERS(AsmSynthesizedFieldDeclaration);
1025#if defined(SgAsmSynthesizedFieldDeclaration_HEADERS) || defined(DOCUMENTATION)
1033#ifndef DOCUMENTATION
1034 AsmSynthesizedFieldDeclaration.setDataPrototype(
1035 "std::string",
"name",
"",
1036 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
1039#ifndef DOCUMENTATION
1040 AsmSynthesizedFieldDeclaration.setDataPrototype(
1041 "uint64_t",
"offset",
"= 0",
1042 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
1045 DECLARE_OTHERS(AsmSynthesizedFieldDeclaration);
1046#if defined(SgAsmSynthesizedFieldDeclaration_OTHERS) || defined(DOCUMENTATION)
1049#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
1051 friend class boost::serialization::access;
1054 void serialize(S &s,
const unsigned ) {
1057 s & BOOST_SERIALIZATION_NVP(p_name);
1058 s & BOOST_SERIALIZATION_NVP(p_offset);
1110DECLARE_LEAF_CLASS(AsmSynthesizedDataStructureDeclaration);
1111IS_SERIALIZABLE(AsmSynthesizedDataStructureDeclaration);
1113#ifndef DOCUMENTATION
1114AsmSynthesizedDataStructureDeclaration.useSmallHeader(
true);
1117DECLARE_HEADERS(AsmSynthesizedDataStructureDeclaration);
1118#if defined(SgAsmSynthesizedDataStructureDeclaration_HEADERS) || defined(DOCUMENTATION)
1119#include <sageContainer.h>
1136 DECLARE_OTHERS(AsmSynthesizedDataStructureDeclaration);
1137#if defined(SgAsmSynthesizedDataStructureDeclaration_OTHERS) || defined(DOCUMENTATION)
1140#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
1142 friend class boost::serialization::access;
1145 void serialize(S &s,
const unsigned ) {
1152 SgAsmSynthesizedDeclarationPtrList p_declarationList;
1157 p_declarationList.push_back(declaration);
1195DECLARE_LEAF_CLASS(AsmStringStorage);
1196IS_SERIALIZABLE(AsmStringStorage);
1198#ifndef DOCUMENTATION
1199AsmStringStorage.useSmallHeader(
true);
1202DECLARE_HEADERS(AsmStringStorage);
1203#if defined(SgAsmStringStorage_HEADERS) || defined(DOCUMENTATION)
1204#include <Rose/BinaryAnalysis/Address.h>
1212#ifndef DOCUMENTATION
1213 AsmStringStorage.setDataPrototype(
1214 "SgAsmGenericStrtab*",
"strtab",
"= nullptr",
1215 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
1218#ifndef DOCUMENTATION
1219 AsmStringStorage.setDataPrototype(
1220 "std::string",
"string",
"",
1221 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
1224#ifndef DOCUMENTATION
1225 AsmStringStorage.setDataPrototype(
1226 "Rose::BinaryAnalysis::Address",
"offset",
"= 0",
1227 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
1230 DECLARE_OTHERS(AsmStringStorage);
1231#if defined(SgAsmStringStorage_OTHERS) || defined(DOCUMENTATION)
1234#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
1236 friend class boost::serialization::access;
1239 void serialize(S &s,
const unsigned ) {
1242 s & BOOST_SERIALIZATION_NVP(p_strtab);
1243 s & BOOST_SERIALIZATION_NVP(p_string);
1244 s & BOOST_SERIALIZATION_NVP(p_offset);
1275 void dump(FILE *s,
const char *prefix, ssize_t idx)
const;
1284 friend class SgAsmStoredStrtab;
1311DECLARE_LEAF_CLASS(AsmStoredString);
1312IS_SERIALIZABLE(AsmStoredString);
1314#ifndef DOCUMENTATION
1315AsmStoredString.useSmallHeader(
true);
1318DECLARE_HEADERS(AsmStoredString);
1319#if defined(SgAsmStoredString_HEADERS) || defined(DOCUMENTATION)
1320#include <Rose/BinaryAnalysis/Address.h>
1328#ifndef DOCUMENTATION
1329 AsmStoredString.setDataPrototype(
1330 "SgAsmStringStorage*",
"storage",
"= nullptr",
1331 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
1334 DECLARE_OTHERS(AsmStoredString);
1335#if defined(SgAsmStoredString_OTHERS) || defined(DOCUMENTATION)
1338#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
1340 friend class boost::serialization::access;
1343 void serialize(S &s,
const unsigned ) {
1346 s & BOOST_SERIALIZATION_NVP(p_storage);
1369 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
1377 virtual std::string
get_string(
bool escape=
false)
const override;
1419DECLARE_LEAF_CLASS(AsmStaticData);
1420IS_SERIALIZABLE(AsmStaticData);
1422#ifndef DOCUMENTATION
1423AsmStaticData.useSmallHeader(
true);
1426DECLARE_HEADERS(AsmStaticData);
1427#if defined(SgAsmStaticData_HEADERS) || defined(DOCUMENTATION)
1428#include <sageContainer.h>
1442#ifndef DOCUMENTATION
1443 AsmStaticData.setDataPrototype(
1444 "SgUnsignedCharList",
"rawBytes",
"",
1445 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
1448 DECLARE_OTHERS(AsmStaticData);
1449#if defined(SgAsmStaticData_OTHERS) || defined(DOCUMENTATION)
1452#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
1454 friend class boost::serialization::access;
1457 void serialize(S &s,
const unsigned ) {
1460 s & BOOST_SERIALIZATION_NVP(p_rawBytes);
1485 const SgUnsignedCharList& get_raw_bytes() const ROSE_DEPRECATED("use
get_rawBytes");
1486 void set_raw_bytes(const SgUnsignedCharList&) ROSE_DEPRECATED("use
set_rawBytes");
1517DECLARE_LEAF_CLASS(AsmStackExpression);
1518IS_SERIALIZABLE(AsmStackExpression);
1520#ifndef DOCUMENTATION
1521AsmStackExpression.useSmallHeader(
true);
1529#ifndef DOCUMENTATION
1530 AsmStackExpression.setDataPrototype(
1531 "int",
"stackPosition",
"= 0",
1532 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
1535 DECLARE_OTHERS(AsmStackExpression);
1536#if defined(SgAsmStackExpression_OTHERS) || defined(DOCUMENTATION)
1539#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
1541 friend class boost::serialization::access;
1544 void serialize(S &s,
const unsigned ) {
1547 s & BOOST_SERIALIZATION_NVP(p_stackPosition);
1598DECLARE_LEAF_CLASS(AsmRiscOperation);
1599IS_SERIALIZABLE(AsmRiscOperation);
1601#ifndef DOCUMENTATION
1602AsmRiscOperation.useSmallHeader(
true);
1605DECLARE_HEADERS(AsmRiscOperation);
1606#if defined(SgAsmRiscOperation_HEADERS) || defined(DOCUMENTATION)
1607#ifdef ROSE_SgAsmRiscOperation_IMPL
1608#include <SgAsmExprListExp.h>
1624#ifndef DOCUMENTATION
1625 AsmRiscOperation.setDataPrototype(
1626 "SgAsmRiscOperation::RiscOperator",
"riscOperator",
"= OP_NONE",
1627 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
1630#ifndef DOCUMENTATION
1631 AsmRiscOperation.setDataPrototype(
1632 "SgAsmExprListExp*",
"operands",
"= nullptr",
1633 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
1636 DECLARE_OTHERS(AsmRiscOperation);
1637#if defined(SgAsmRiscOperation_OTHERS) || defined(DOCUMENTATION)
1640#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
1642 friend class boost::serialization::access;
1645 void serialize(S &s,
const unsigned ) {
1648 s & BOOST_SERIALIZATION_NVP(p_riscOperator);
1649 s & BOOST_SERIALIZATION_NVP(p_operands);
1667 OP_filterCallTarget,
1668 OP_filterReturnTarget,
1669 OP_filterIndirectJumpTarget,
1679 OP_leastSignificantSetBit,
1680 OP_mostSignificantSetBit,
1685 OP_shiftRightArithmetic,
1690 OP_isUnsignedLessThan,
1691 OP_isUnsignedLessThanOrEqual,
1692 OP_isUnsignedGreaterThan,
1693 OP_isUnsignedGreaterThanOrEqual,
1694 OP_isSignedLessThan,
1695 OP_isSignedLessThanOrEqual,
1696 OP_isSignedGreaterThan,
1697 OP_isSignedGreaterThanOrEqual,
1709 OP_unsignedMultiply,
1777DECLARE_LEAF_CLASS(AsmRegisterNames);
1778IS_SERIALIZABLE(AsmRegisterNames);
1780#ifndef DOCUMENTATION
1781AsmRegisterNames.useSmallHeader(
true);
1784DECLARE_HEADERS(AsmRegisterNames);
1785#if defined(SgAsmRegisterNames_HEADERS) || defined(DOCUMENTATION)
1786#include <sageContainer.h>
1794#ifndef DOCUMENTATION
1795 AsmRegisterNames.setDataPrototype(
1796 "SgAsmRegisterReferenceExpressionPtrList",
"registers",
"",
1797 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
1800#ifndef DOCUMENTATION
1801 AsmRegisterNames.setDataPrototype(
1802 "unsigned",
"mask",
"= 0",
1803 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
1806 DECLARE_OTHERS(AsmRegisterNames);
1807#if defined(SgAsmRegisterNames_OTHERS) || defined(DOCUMENTATION)
1810#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
1812 friend class boost::serialization::access;
1815 void serialize(S &s,
const unsigned ) {
1818 s & BOOST_SERIALIZATION_NVP(p_registers);
1819 s & BOOST_SERIALIZATION_NVP(p_mask);
1873DECLARE_LEAF_CLASS(AsmPowerpcInstruction);
1874IS_SERIALIZABLE(AsmPowerpcInstruction);
1876#ifndef DOCUMENTATION
1877AsmPowerpcInstruction.useSmallHeader(
true);
1880DECLARE_HEADERS(AsmPowerpcInstruction);
1881#if defined(SgAsmPowerpcInstruction_HEADERS) || defined(DOCUMENTATION)
1882#include <Rose/BinaryAnalysis/InstructionEnumsPowerpc.h>
1890#ifndef DOCUMENTATION
1891 AsmPowerpcInstruction.setDataPrototype(
1892 "Rose::BinaryAnalysis::PowerpcInstructionKind",
"kind",
"= Rose::BinaryAnalysis::powerpc_unknown_instruction",
1893 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
1896 DECLARE_OTHERS(AsmPowerpcInstruction);
1897#if defined(SgAsmPowerpcInstruction_OTHERS) || defined(DOCUMENTATION)
1900#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
1902 friend class boost::serialization::access;
1905 void serialize(S &s,
const unsigned ) {
1908 s & BOOST_SERIALIZATION_NVP(p_kind);
1920 Rose::BinaryAnalysis::PowerpcInstructionKind
const&
get_kind()
const;
1921 void set_kind(Rose::BinaryAnalysis::PowerpcInstructionKind
const&);
1950 uint8_t
const& architectureId,
1951 Rose::BinaryAnalysis::PowerpcInstructionKind
const& kind);
1971DECLARE_LEAF_CLASS(AsmPointerType);
1972IS_SERIALIZABLE(AsmPointerType);
1974#ifndef DOCUMENTATION
1975AsmPointerType.useSmallHeader(
true);
1983#ifndef DOCUMENTATION
1984 AsmPointerType.setDataPrototype(
1985 "SgAsmType *",
"subtype",
"",
1986 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
1989 DECLARE_OTHERS(AsmPointerType);
1990#if defined(SgAsmPointerType_OTHERS) || defined(DOCUMENTATION)
1993#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
1995 friend class boost::serialization::access;
1998 void serialize(S &s,
const unsigned ) {
2001 s & BOOST_SERIALIZATION_NVP(p_subtype);
2044DECLARE_LEAF_CLASS(AsmPEStringSection);
2045IS_SERIALIZABLE(AsmPEStringSection);
2047#ifndef DOCUMENTATION
2048AsmPEStringSection.useSmallHeader(
true);
2051DECLARE_HEADERS(AsmPEStringSection);
2052#if defined(SgAsmPEStringSection_HEADERS) || defined(DOCUMENTATION)
2053#include <Rose/BinaryAnalysis/Address.h>
2061#ifndef DOCUMENTATION
2062 AsmPEStringSection.setDataPrototype(
2063 "SgAsmCoffStrtab*",
"strtab",
"= nullptr",
2064 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2067 DECLARE_OTHERS(AsmPEStringSection);
2068#if defined(SgAsmPEStringSection_OTHERS) || defined(DOCUMENTATION)
2071#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
2073 friend class boost::serialization::access;
2076 void serialize(S &s,
const unsigned ) {
2079 s & BOOST_SERIALIZATION_NVP(p_strtab);
2097 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
2099 virtual void unparse(std::ostream&)
const override;
2126DECLARE_LEAF_CLASS(AsmPESectionTableEntry);
2127IS_SERIALIZABLE(AsmPESectionTableEntry);
2129#ifndef DOCUMENTATION
2130AsmPESectionTableEntry.useSmallHeader(
true);
2133DECLARE_HEADERS(AsmPESectionTableEntry);
2134#if defined(SgAsmPESectionTableEntry_HEADERS) || defined(DOCUMENTATION)
2135#include <Rose/BinaryAnalysis/Address.h>
2143#ifndef DOCUMENTATION
2144 AsmPESectionTableEntry.setDataPrototype(
2145 "std::string",
"name",
"",
2146 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2149#ifndef DOCUMENTATION
2150 AsmPESectionTableEntry.setDataPrototype(
2151 "Rose::BinaryAnalysis::Address",
"virtual_size",
"= 0",
2152 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2155#ifndef DOCUMENTATION
2156 AsmPESectionTableEntry.setDataPrototype(
2157 "Rose::BinaryAnalysis::Address",
"rva",
"= 0",
2158 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2161#ifndef DOCUMENTATION
2162 AsmPESectionTableEntry.setDataPrototype(
2163 "Rose::BinaryAnalysis::Address",
"physical_size",
"= 0",
2164 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2167#ifndef DOCUMENTATION
2168 AsmPESectionTableEntry.setDataPrototype(
2169 "Rose::BinaryAnalysis::Address",
"physical_offset",
"= 0",
2170 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2173#ifndef DOCUMENTATION
2174 AsmPESectionTableEntry.setDataPrototype(
2175 "unsigned",
"coff_line_nums",
"= 0",
2176 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2179#ifndef DOCUMENTATION
2180 AsmPESectionTableEntry.setDataPrototype(
2181 "unsigned",
"n_relocs",
"= 0",
2182 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2185#ifndef DOCUMENTATION
2186 AsmPESectionTableEntry.setDataPrototype(
2187 "unsigned",
"n_coff_line_nums",
"= 0",
2188 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2191#ifndef DOCUMENTATION
2192 AsmPESectionTableEntry.setDataPrototype(
2193 "unsigned",
"flags",
"= 0",
2194 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2197 DECLARE_OTHERS(AsmPESectionTableEntry);
2198#if defined(SgAsmPESectionTableEntry_OTHERS) || defined(DOCUMENTATION)
2201#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
2203 friend class boost::serialization::access;
2206 void serialize(S &s,
const unsigned ) {
2209 s & BOOST_SERIALIZATION_NVP(p_name);
2210 s & BOOST_SERIALIZATION_NVP(p_virtual_size);
2211 s & BOOST_SERIALIZATION_NVP(p_rva);
2212 s & BOOST_SERIALIZATION_NVP(p_physical_size);
2213 s & BOOST_SERIALIZATION_NVP(p_physical_offset);
2214 s & BOOST_SERIALIZATION_NVP(p_coff_line_nums);
2215 s & BOOST_SERIALIZATION_NVP(p_n_relocs);
2216 s & BOOST_SERIALIZATION_NVP(p_n_coff_line_nums);
2217 s & BOOST_SERIALIZATION_NVP(p_flags);
2231 uint32_t virtual_size;
2233 uint32_t physical_size;
2234 uint32_t physical_offset;
2235 uint32_t coff_line_nums;
2237 uint32_t n_coff_line_nums;
2240#if !defined(SWIG) && !defined(_MSC_VER)
2241 __attribute__((packed))
2250 enum PESectionFlags {
2251 OF_CODE = 0x00000020,
2252 OF_IDATA = 0x00000040,
2253 OF_UDATA = 0x00000080,
2254 OF_INFO = 0x00000200,
2255 OF_REMOVE = 0x00000800,
2256 OF_COMDAT = 0x00001000,
2257 OF_NO_DEFER_SPEC_EXC= 0x00004000,
2259 OF_GPREL = 0x00008000,
2260 OF_ALIGN_1 = 0x00100000,
2261 OF_ALIGN_2 = 0x00200000,
2262 OF_ALIGN_4 = 0x00300000,
2263 OF_ALIGN_8 = 0x00400000,
2264 OF_ALIGN_16 = 0x00500000,
2265 OF_ALIGN_32 = 0x00600000,
2266 OF_ALIGN_64 = 0x00700000,
2267 OF_ALIGN_128 = 0x00800000,
2268 OF_ALIGN_256 = 0x00900000,
2269 OF_ALIGN_512 = 0x00a00000,
2270 OF_ALIGN_1k = 0x00b00000,
2271 OF_ALIGN_2k = 0x00c00000,
2272 OF_ALIGN_4k = 0x00d00000,
2273 OF_ALIGN_8k = 0x00e00000,
2274 OF_ALIGN_MASK = 0x00f00000,
2275 OF_NRELOC_OVFL = 0x01000000,
2276 OF_DISCARDABLE = 0x02000000,
2277 OF_NO_CACHE = 0x04000000,
2278 OF_NO_PAGING = 0x08000000,
2279 OF_SHARED = 0x10000000,
2280 OF_EXECUTABLE = 0x20000000,
2281 OF_READABLE = 0x40000000,
2282 OF_WRITABLE = 0x80000000
2387 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
2393 void update_from_section(
SgAsmPESection*) ROSE_DEPRECATED(
"use updateFromSection");
2420DECLARE_LEAF_CLASS(AsmPESectionTable);
2421IS_SERIALIZABLE(AsmPESectionTable);
2423#ifndef DOCUMENTATION
2424AsmPESectionTable.useSmallHeader(
true);
2432 DECLARE_OTHERS(AsmPESectionTable);
2433#if defined(SgAsmPESectionTable_OTHERS) || defined(DOCUMENTATION)
2436#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
2438 friend class boost::serialization::access;
2441 void serialize(S &s,
const unsigned ) {
2457 virtual void unparse(std::ostream&)
const override;
2458 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
2464 void add_section(
SgAsmPESection*) ROSE_DEPRECATED(
"use addSection");
2491DECLARE_LEAF_CLASS(AsmPERVASizePairList);
2492IS_SERIALIZABLE(AsmPERVASizePairList);
2494#ifndef DOCUMENTATION
2495AsmPERVASizePairList.useSmallHeader(
true);
2498DECLARE_HEADERS(AsmPERVASizePairList);
2499#if defined(SgAsmPERVASizePairList_HEADERS) || defined(DOCUMENTATION)
2500#include <sageContainer.h>
2511#ifndef DOCUMENTATION
2512 AsmPERVASizePairList.setDataPrototype(
2513 "SgAsmPERVASizePairPtrList",
"pairs",
"",
2514 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
2517 DECLARE_OTHERS(AsmPERVASizePairList);
2518#if defined(SgAsmPERVASizePairList_OTHERS) || defined(DOCUMENTATION)
2521#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
2523 friend class boost::serialization::access;
2526 void serialize(S &s,
const unsigned ) {
2529 s & BOOST_SERIALIZATION_NVP(p_pairs);
2570DECLARE_LEAF_CLASS(AsmPERVASizePair);
2571IS_SERIALIZABLE(AsmPERVASizePair);
2573#ifndef DOCUMENTATION
2574AsmPERVASizePair.useSmallHeader(
true);
2577DECLARE_HEADERS(AsmPERVASizePair);
2578#if defined(SgAsmPERVASizePair_HEADERS) || defined(DOCUMENTATION)
2579#include <Rose/BinaryAnalysis/Address.h>
2580#include <Rose/BinaryAnalysis/RelativeVirtualAddress.h>
2588#ifndef DOCUMENTATION
2589 AsmPERVASizePair.setDataPrototype(
2590 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"e_rva",
"",
2591 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2594#ifndef DOCUMENTATION
2595 AsmPERVASizePair.setDataPrototype(
2596 "Rose::BinaryAnalysis::Address",
"e_size",
"= 0",
2597 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2600#ifndef DOCUMENTATION
2601 AsmPERVASizePair.setDataPrototype(
2602 "SgAsmGenericSection*",
"section",
"= nullptr",
2603 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
2606 DECLARE_OTHERS(AsmPERVASizePair);
2607#if defined(SgAsmPERVASizePair_OTHERS) || defined(DOCUMENTATION)
2610#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
2612 friend class boost::serialization::access;
2615 void serialize(S &s,
const unsigned ) {
2618 s & BOOST_SERIALIZATION_NVP(p_e_rva);
2619 s & BOOST_SERIALIZATION_NVP(p_e_size);
2620 s & BOOST_SERIALIZATION_NVP(p_section);
2638#if !defined(SWIG) && !defined(_MSC_VER)
2639 __attribute__((packed))
2723DECLARE_LEAF_CLASS(AsmPEImportSection);
2724IS_SERIALIZABLE(AsmPEImportSection);
2726#ifndef DOCUMENTATION
2727AsmPEImportSection.useSmallHeader(
true);
2730DECLARE_HEADERS(AsmPEImportSection);
2731#if defined(SgAsmPEImportSection_HEADERS) || defined(DOCUMENTATION)
2732#include <Rose/BinaryAnalysis/Address.h>
2733#include <Rose/BinaryAnalysis/RelativeVirtualAddress.h>
2735#ifdef ROSE_SgAsmPEImportSection_IMPL
2736#include <SgAsmPEImportDirectoryList.h>
2886#ifndef DOCUMENTATION
2887 AsmPEImportSection.setDataPrototype(
2888 "SgAsmPEImportDirectoryList*",
"importDirectories",
"= createAndParent<SgAsmPEImportDirectoryList>(this)",
2889 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
2892 DECLARE_OTHERS(AsmPEImportSection);
2893#if defined(SgAsmPEImportSection_OTHERS) || defined(DOCUMENTATION)
2896#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
2898 friend class boost::serialization::access;
2901 void serialize(S &s,
const unsigned ) {
2904 s & BOOST_SERIALIZATION_NVP(p_importDirectories);
2922 virtual void unparse(std::ostream&)
const override;
2923 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
2930 static bool showImportMessage();
2931 static void importMessageReset();
2943 static size_t mesg_nprinted;
2953 static
bool show_import_mesg() ROSE_DEPRECATED("use showImportMessage");
2954 static
void import_mesg_reset() ROSE_DEPRECATED("use importMessageReset");
2955 size_t reallocate_iats(
Rose::BinaryAnalysis::RelativeVirtualAddress) ROSE_DEPRECATED("use
reallocateIats");
2982DECLARE_LEAF_CLASS(AsmPEImportItemList);
2983IS_SERIALIZABLE(AsmPEImportItemList);
2985#ifndef DOCUMENTATION
2986AsmPEImportItemList.useSmallHeader(
true);
2989DECLARE_HEADERS(AsmPEImportItemList);
2990#if defined(SgAsmPEImportItemList_HEADERS) || defined(DOCUMENTATION)
2991#include <sageContainer.h>
3002#ifndef DOCUMENTATION
3003 AsmPEImportItemList.setDataPrototype(
3004 "SgAsmPEImportItemPtrList",
"vector",
"",
3005 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
3008 DECLARE_OTHERS(AsmPEImportItemList);
3009#if defined(SgAsmPEImportItemList_OTHERS) || defined(DOCUMENTATION)
3012#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
3014 friend class boost::serialization::access;
3017 void serialize(S &s,
const unsigned ) {
3020 s & BOOST_SERIALIZATION_NVP(p_vector);
3060DECLARE_LEAF_CLASS(AsmPEImportItem);
3061IS_SERIALIZABLE(AsmPEImportItem);
3063#ifndef DOCUMENTATION
3064AsmPEImportItem.useSmallHeader(
true);
3067DECLARE_HEADERS(AsmPEImportItem);
3068#if defined(SgAsmPEImportItem_HEADERS) || defined(DOCUMENTATION)
3069#include <Rose/BinaryAnalysis/Address.h>
3070#include <Rose/BinaryAnalysis/RelativeVirtualAddress.h>
3072#ifdef ROSE_SgAsmPEImportItem_IMPL
3073#include <SgAsmBasicString.h>
3088#ifndef DOCUMENTATION
3089 AsmPEImportItem.setDataPrototype(
3090 "bool",
"by_ordinal",
"= true",
3091 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3094#ifndef DOCUMENTATION
3095 AsmPEImportItem.setDataPrototype(
3096 "unsigned",
"ordinal",
"= 0",
3097 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3100#ifndef DOCUMENTATION
3101 AsmPEImportItem.setDataPrototype(
3102 "unsigned",
"hint",
"= 0",
3103 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3106#ifndef DOCUMENTATION
3107 AsmPEImportItem.setDataPrototype(
3108 "SgAsmGenericString*",
"name",
"= createAndParent<SgAsmBasicString>(this)",
3109 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
3112#ifndef DOCUMENTATION
3113 AsmPEImportItem.setDataPrototype(
3114 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"hintname_rva",
"",
3115 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3118#ifndef DOCUMENTATION
3119 AsmPEImportItem.setDataPrototype(
3120 "size_t",
"hintname_nalloc",
"= 0",
3121 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3124#ifndef DOCUMENTATION
3125 AsmPEImportItem.setDataPrototype(
3126 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"bound_rva",
"",
3127 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3130#ifndef DOCUMENTATION
3131 AsmPEImportItem.setDataPrototype(
3132 "bool",
"iat_written",
"= false",
3133 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3136 DECLARE_OTHERS(AsmPEImportItem);
3137#if defined(SgAsmPEImportItem_OTHERS) || defined(DOCUMENTATION)
3140#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
3142 friend class boost::serialization::access;
3145 void serialize(S &s,
const unsigned ) {
3148 s & BOOST_SERIALIZATION_NVP(p_by_ordinal);
3149 s & BOOST_SERIALIZATION_NVP(p_ordinal);
3150 s & BOOST_SERIALIZATION_NVP(p_hint);
3151 s & BOOST_SERIALIZATION_NVP(p_name);
3152 s & BOOST_SERIALIZATION_NVP(p_hintname_rva);
3153 s & BOOST_SERIALIZATION_NVP(p_hintname_nalloc);
3154 s & BOOST_SERIALIZATION_NVP(p_bound_rva);
3155 s & BOOST_SERIALIZATION_NVP(p_iat_written);
3247 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
3270 Rose::BinaryAnalysis::Address get_iat_entry_va() const ROSE_DEPRECATED("use
get_iatEntryVa");
3297DECLARE_LEAF_CLASS(AsmPEImportDirectoryList);
3298IS_SERIALIZABLE(AsmPEImportDirectoryList);
3300#ifndef DOCUMENTATION
3301AsmPEImportDirectoryList.useSmallHeader(
true);
3304DECLARE_HEADERS(AsmPEImportDirectoryList);
3305#if defined(SgAsmPEImportDirectoryList_HEADERS) || defined(DOCUMENTATION)
3306#include <sageContainer.h>
3317#ifndef DOCUMENTATION
3318 AsmPEImportDirectoryList.setDataPrototype(
3319 "SgAsmPEImportDirectoryPtrList",
"vector",
"",
3320 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
3323 DECLARE_OTHERS(AsmPEImportDirectoryList);
3324#if defined(SgAsmPEImportDirectoryList_OTHERS) || defined(DOCUMENTATION)
3327#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
3329 friend class boost::serialization::access;
3332 void serialize(S &s,
const unsigned ) {
3335 s & BOOST_SERIALIZATION_NVP(p_vector);
3377DECLARE_LEAF_CLASS(AsmPEImportDirectory);
3378IS_SERIALIZABLE(AsmPEImportDirectory);
3380#ifndef DOCUMENTATION
3381AsmPEImportDirectory.useSmallHeader(
true);
3384DECLARE_HEADERS(AsmPEImportDirectory);
3385#if defined(SgAsmPEImportDirectory_HEADERS) || defined(DOCUMENTATION)
3386#include <Rose/BinaryAnalysis/Address.h>
3387#include <Rose/BinaryAnalysis/AddressIntervalSet.h>
3388#include <Rose/BinaryAnalysis/RelativeVirtualAddress.h>
3389#include <sageContainer.h>
3391#ifdef ROSE_SgAsmPEImportDirectory_IMPL
3392#include <SgAsmGenericString.h>
3393#include <SgAsmPEImportItemList.h>
3405#ifndef DOCUMENTATION
3406 AsmPEImportDirectory.setDataPrototype(
3407 "SgAsmGenericString*",
"dllName",
"= nullptr",
3408 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
3411#ifndef DOCUMENTATION
3412 AsmPEImportDirectory.setDataPrototype(
3413 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"dllNameRva",
"",
3414 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3417#ifndef DOCUMENTATION
3418 AsmPEImportDirectory.setDataPrototype(
3419 "size_t",
"dll_name_nalloc",
"= 0",
3420 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3423#ifndef DOCUMENTATION
3424 AsmPEImportDirectory.setDataPrototype(
3425 "time_t",
"time",
"= 0",
3426 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3429#ifndef DOCUMENTATION
3430 AsmPEImportDirectory.setDataPrototype(
3431 "unsigned",
"forwarder_chain",
"= 0",
3432 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3435#ifndef DOCUMENTATION
3436 AsmPEImportDirectory.setDataPrototype(
3437 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"ilt_rva",
"",
3438 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3441#ifndef DOCUMENTATION
3442 AsmPEImportDirectory.setDataPrototype(
3443 "size_t",
"ilt_nalloc",
"= 0",
3444 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3447#ifndef DOCUMENTATION
3448 AsmPEImportDirectory.setDataPrototype(
3449 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"iat_rva",
"",
3450 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3453#ifndef DOCUMENTATION
3454 AsmPEImportDirectory.setDataPrototype(
3455 "size_t",
"iat_nalloc",
"= 0",
3456 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3459#ifndef DOCUMENTATION
3460 AsmPEImportDirectory.setDataPrototype(
3461 "SgAsmPEImportItemList*",
"imports",
"= createAndParent<SgAsmPEImportItemList>(this)",
3462 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
3465 DECLARE_OTHERS(AsmPEImportDirectory);
3466#if defined(SgAsmPEImportDirectory_OTHERS) || defined(DOCUMENTATION)
3469#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
3471 friend class boost::serialization::access;
3474 void serialize(S &s,
const unsigned ) {
3477 s & BOOST_SERIALIZATION_NVP(p_dllName);
3478 s & BOOST_SERIALIZATION_NVP(p_dllNameRva);
3479 s & BOOST_SERIALIZATION_NVP(p_dll_name_nalloc);
3480 s & BOOST_SERIALIZATION_NVP(p_time);
3481 s & BOOST_SERIALIZATION_NVP(p_forwarder_chain);
3482 s & BOOST_SERIALIZATION_NVP(p_ilt_rva);
3483 s & BOOST_SERIALIZATION_NVP(p_ilt_nalloc);
3484 s & BOOST_SERIALIZATION_NVP(p_iat_rva);
3485 s & BOOST_SERIALIZATION_NVP(p_iat_nalloc);
3486 s & BOOST_SERIALIZATION_NVP(p_imports);
3500 uint32_t forwarder_chain;
3501 uint32_t dll_name_rva;
3504#if !defined(SWIG) && !defined(_MSC_VER)
3505 __attribute__((packed))
3643 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
3674 size_t nalloc)
const;
3682 const
Rose::BinaryAnalysis::RelativeVirtualAddress& get_dll_name_rva() const ROSE_DEPRECATED("use
get_dllNameRva");
3683 Rose::BinaryAnalysis::RelativeVirtualAddress& get_dll_name_rva() ROSE_DEPRECATED("use
get_dllNameRva");
3684 void set_dll_name_rva(const
Rose::BinaryAnalysis::RelativeVirtualAddress&) ROSE_DEPRECATED("use
set_dllNameRva");
3685 size_t iat_required_size() const ROSE_DEPRECATED("use
iatRequiredSize");
3687 size_t hintname_table_extent(
Rose::BinaryAnalysis::AddressIntervalSet&) const ROSE_DEPRECATED("use
hintNameTableExtent");
3714DECLARE_LEAF_CLASS(AsmPEFileHeader);
3715IS_SERIALIZABLE(AsmPEFileHeader);
3717#ifndef DOCUMENTATION
3718AsmPEFileHeader.useSmallHeader(
true);
3721DECLARE_HEADERS(AsmPEFileHeader);
3722#if defined(SgAsmPEFileHeader_HEADERS) || defined(DOCUMENTATION)
3723#include <Rose/BinaryAnalysis/Address.h>
3724#include <Rose/BinaryAnalysis/RelativeVirtualAddress.h>
3726#ifdef ROSE_SgAsmPEFileHeader_IMPL
3727#include <SgAsmCoffSymbolTable.h>
3728#include <SgAsmPERVASizePairList.h>
3729#include <SgAsmPESectionTable.h>
3740#ifndef DOCUMENTATION
3741 AsmPEFileHeader.setDataPrototype(
3742 "unsigned",
"e_cpu_type",
"= 0",
3743 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3746#ifndef DOCUMENTATION
3747 AsmPEFileHeader.setDataPrototype(
3748 "unsigned",
"e_nsections",
"= 0",
3749 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3752#ifndef DOCUMENTATION
3753 AsmPEFileHeader.setDataPrototype(
3754 "unsigned",
"e_time",
"= 0",
3755 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3758#ifndef DOCUMENTATION
3759 AsmPEFileHeader.setDataPrototype(
3760 "Rose::BinaryAnalysis::Address",
"e_coff_symtab",
"= 0",
3761 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3764#ifndef DOCUMENTATION
3765 AsmPEFileHeader.setDataPrototype(
3766 "Rose::BinaryAnalysis::Address",
"e_nt_hdr_size",
"= 0",
3767 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3770#ifndef DOCUMENTATION
3771 AsmPEFileHeader.setDataPrototype(
3772 "unsigned",
"e_coff_nsyms",
"= 0",
3773 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3776#ifndef DOCUMENTATION
3777 AsmPEFileHeader.setDataPrototype(
3778 "unsigned",
"e_flags",
"= 0",
3779 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3782#ifndef DOCUMENTATION
3783 AsmPEFileHeader.setDataPrototype(
3784 "unsigned",
"e_opt_magic",
"= 0",
3785 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3788#ifndef DOCUMENTATION
3789 AsmPEFileHeader.setDataPrototype(
3790 "unsigned",
"e_lmajor",
"= 0",
3791 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3794#ifndef DOCUMENTATION
3795 AsmPEFileHeader.setDataPrototype(
3796 "unsigned",
"e_lminor",
"= 0",
3797 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3800#ifndef DOCUMENTATION
3801 AsmPEFileHeader.setDataPrototype(
3802 "unsigned",
"e_code_size",
"= 0",
3803 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3806#ifndef DOCUMENTATION
3807 AsmPEFileHeader.setDataPrototype(
3808 "unsigned",
"e_data_size",
"= 0",
3809 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3812#ifndef DOCUMENTATION
3813 AsmPEFileHeader.setDataPrototype(
3814 "unsigned",
"e_bss_size",
"= 0",
3815 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3818#ifndef DOCUMENTATION
3819 AsmPEFileHeader.setDataPrototype(
3820 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"e_code_rva",
"",
3821 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3824#ifndef DOCUMENTATION
3825 AsmPEFileHeader.setDataPrototype(
3826 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"e_data_rva",
"",
3827 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3830#ifndef DOCUMENTATION
3831 AsmPEFileHeader.setDataPrototype(
3832 "unsigned",
"e_section_align",
"= 0",
3833 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3836#ifndef DOCUMENTATION
3837 AsmPEFileHeader.setDataPrototype(
3838 "unsigned",
"e_file_align",
"= 0",
3839 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3842#ifndef DOCUMENTATION
3843 AsmPEFileHeader.setDataPrototype(
3844 "unsigned",
"e_os_major",
"= 0",
3845 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3848#ifndef DOCUMENTATION
3849 AsmPEFileHeader.setDataPrototype(
3850 "unsigned",
"e_os_minor",
"= 0",
3851 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3854#ifndef DOCUMENTATION
3855 AsmPEFileHeader.setDataPrototype(
3856 "unsigned",
"e_user_major",
"= 0",
3857 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3860#ifndef DOCUMENTATION
3861 AsmPEFileHeader.setDataPrototype(
3862 "unsigned",
"e_user_minor",
"= 0",
3863 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3866#ifndef DOCUMENTATION
3867 AsmPEFileHeader.setDataPrototype(
3868 "unsigned",
"e_subsys_major",
"= 0",
3869 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3872#ifndef DOCUMENTATION
3873 AsmPEFileHeader.setDataPrototype(
3874 "unsigned",
"e_subsys_minor",
"= 0",
3875 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3878#ifndef DOCUMENTATION
3879 AsmPEFileHeader.setDataPrototype(
3880 "unsigned",
"e_reserved9",
"= 0",
3881 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3884#ifndef DOCUMENTATION
3885 AsmPEFileHeader.setDataPrototype(
3886 "unsigned",
"e_image_size",
"= 0",
3887 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3890#ifndef DOCUMENTATION
3891 AsmPEFileHeader.setDataPrototype(
3892 "unsigned",
"e_header_size",
"= 0",
3893 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3896#ifndef DOCUMENTATION
3897 AsmPEFileHeader.setDataPrototype(
3898 "unsigned",
"e_file_checksum",
"= 0",
3899 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3902#ifndef DOCUMENTATION
3903 AsmPEFileHeader.setDataPrototype(
3904 "unsigned",
"e_subsystem",
"= 0",
3905 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3908#ifndef DOCUMENTATION
3909 AsmPEFileHeader.setDataPrototype(
3910 "unsigned",
"e_dll_flags",
"= 0",
3911 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3914#ifndef DOCUMENTATION
3915 AsmPEFileHeader.setDataPrototype(
3916 "unsigned",
"e_stack_reserve_size",
"= 0",
3917 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3920#ifndef DOCUMENTATION
3921 AsmPEFileHeader.setDataPrototype(
3922 "unsigned",
"e_stack_commit_size",
"= 0",
3923 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3926#ifndef DOCUMENTATION
3927 AsmPEFileHeader.setDataPrototype(
3928 "unsigned",
"e_heap_reserve_size",
"= 0",
3929 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3932#ifndef DOCUMENTATION
3933 AsmPEFileHeader.setDataPrototype(
3934 "unsigned",
"e_heap_commit_size",
"= 0",
3935 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3938#ifndef DOCUMENTATION
3939 AsmPEFileHeader.setDataPrototype(
3940 "unsigned",
"e_loader_flags",
"= 0",
3941 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3944#ifndef DOCUMENTATION
3945 AsmPEFileHeader.setDataPrototype(
3946 "unsigned",
"e_num_rvasize_pairs",
"= 0",
3947 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3950#ifndef DOCUMENTATION
3951 AsmPEFileHeader.setDataPrototype(
3952 "SgAsmPERVASizePairList*",
"rvaSizePairs",
"= nullptr",
3953 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
3956#ifndef DOCUMENTATION
3957 AsmPEFileHeader.setDataPrototype(
3958 "SgAsmPESectionTable*",
"sectionTable",
"= nullptr",
3959 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3962#ifndef DOCUMENTATION
3963 AsmPEFileHeader.setDataPrototype(
3964 "SgAsmCoffSymbolTable*",
"coffSymbolTable",
"= nullptr",
3965 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
3968 DECLARE_OTHERS(AsmPEFileHeader);
3969#if defined(SgAsmPEFileHeader_OTHERS) || defined(DOCUMENTATION)
3972#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
3974 friend class boost::serialization::access;
3977 void serialize(S &s,
const unsigned ) {
3980 s & BOOST_SERIALIZATION_NVP(p_e_cpu_type);
3981 s & BOOST_SERIALIZATION_NVP(p_e_nsections);
3982 s & BOOST_SERIALIZATION_NVP(p_e_time);
3983 s & BOOST_SERIALIZATION_NVP(p_e_coff_symtab);
3984 s & BOOST_SERIALIZATION_NVP(p_e_nt_hdr_size);
3985 s & BOOST_SERIALIZATION_NVP(p_e_coff_nsyms);
3986 s & BOOST_SERIALIZATION_NVP(p_e_flags);
3987 s & BOOST_SERIALIZATION_NVP(p_e_opt_magic);
3988 s & BOOST_SERIALIZATION_NVP(p_e_lmajor);
3989 s & BOOST_SERIALIZATION_NVP(p_e_lminor);
3990 s & BOOST_SERIALIZATION_NVP(p_e_code_size);
3991 s & BOOST_SERIALIZATION_NVP(p_e_data_size);
3992 s & BOOST_SERIALIZATION_NVP(p_e_bss_size);
3993 s & BOOST_SERIALIZATION_NVP(p_e_code_rva);
3994 s & BOOST_SERIALIZATION_NVP(p_e_data_rva);
3995 s & BOOST_SERIALIZATION_NVP(p_e_section_align);
3996 s & BOOST_SERIALIZATION_NVP(p_e_file_align);
3997 s & BOOST_SERIALIZATION_NVP(p_e_os_major);
3998 s & BOOST_SERIALIZATION_NVP(p_e_os_minor);
3999 s & BOOST_SERIALIZATION_NVP(p_e_user_major);
4000 s & BOOST_SERIALIZATION_NVP(p_e_user_minor);
4001 s & BOOST_SERIALIZATION_NVP(p_e_subsys_major);
4002 s & BOOST_SERIALIZATION_NVP(p_e_subsys_minor);
4003 s & BOOST_SERIALIZATION_NVP(p_e_reserved9);
4004 s & BOOST_SERIALIZATION_NVP(p_e_image_size);
4005 s & BOOST_SERIALIZATION_NVP(p_e_header_size);
4006 s & BOOST_SERIALIZATION_NVP(p_e_file_checksum);
4007 s & BOOST_SERIALIZATION_NVP(p_e_subsystem);
4008 s & BOOST_SERIALIZATION_NVP(p_e_dll_flags);
4009 s & BOOST_SERIALIZATION_NVP(p_e_stack_reserve_size);
4010 s & BOOST_SERIALIZATION_NVP(p_e_stack_commit_size);
4011 s & BOOST_SERIALIZATION_NVP(p_e_heap_reserve_size);
4012 s & BOOST_SERIALIZATION_NVP(p_e_heap_commit_size);
4013 s & BOOST_SERIALIZATION_NVP(p_e_loader_flags);
4014 s & BOOST_SERIALIZATION_NVP(p_e_num_rvasize_pairs);
4015 s & BOOST_SERIALIZATION_NVP(p_rvaSizePairs);
4016 s & BOOST_SERIALIZATION_NVP(p_sectionTable);
4017 s & BOOST_SERIALIZATION_NVP(p_coffSymbolTable);
4030 unsigned char e_magic[4];
4031 uint16_t e_cpu_type;
4032 uint16_t e_nsections;
4034 uint32_t e_coff_symtab;
4035 uint32_t e_coff_nsyms;
4036 uint16_t e_nt_hdr_size;
4039#if !defined(SWIG) && !defined(_MSC_VER)
4040 __attribute__((packed))
4045 uint16_t e_opt_magic;
4048 uint16_t e_code_size;
4049 uint32_t e_data_size;
4050 uint32_t e_bss_size;
4051 uint32_t e_entrypoint_rva;
4052 uint32_t e_code_rva;
4053 uint32_t e_data_rva;
4054 uint32_t e_image_base;
4055 uint32_t e_section_align;
4056 uint32_t e_file_align;
4057 uint16_t e_os_major;
4058 uint16_t e_os_minor;
4059 uint16_t e_user_major;
4060 uint16_t e_user_minor;
4061 uint16_t e_subsys_major;
4062 uint16_t e_subsys_minor;
4063 uint32_t e_reserved9;
4064 uint32_t e_image_size;
4065 uint32_t e_header_size;
4066 uint32_t e_file_checksum;
4067 uint16_t e_subsystem;
4068 uint16_t e_dll_flags;
4069 uint32_t e_stack_reserve_size;
4070 uint32_t e_stack_commit_size;
4071 uint32_t e_heap_reserve_size;
4072 uint32_t e_heap_commit_size;
4073 uint32_t e_loader_flags;
4074 uint32_t e_num_rvasize_pairs;
4076#if !defined(SWIG) && !defined(_MSC_VER)
4077 __attribute__((packed))
4082 uint16_t e_opt_magic;
4085 uint16_t e_code_size;
4086 uint32_t e_data_size;
4087 uint32_t e_bss_size;
4088 uint32_t e_entrypoint_rva;
4089 uint32_t e_code_rva;
4091 uint64_t e_image_base;
4092 uint32_t e_section_align;
4093 uint32_t e_file_align;
4094 uint16_t e_os_major;
4095 uint16_t e_os_minor;
4096 uint16_t e_user_major;
4097 uint16_t e_user_minor;
4098 uint16_t e_subsys_major;
4099 uint16_t e_subsys_minor;
4100 uint32_t e_reserved9;
4101 uint32_t e_image_size;
4102 uint32_t e_header_size;
4103 uint32_t e_file_checksum;
4104 uint16_t e_subsystem;
4105 uint16_t e_dll_flags;
4106 uint64_t e_stack_reserve_size;
4107 uint64_t e_stack_commit_size;
4108 uint64_t e_heap_reserve_size;
4109 uint64_t e_heap_commit_size;
4110 uint32_t e_loader_flags;
4111 uint32_t e_num_rvasize_pairs;
4113#if !defined(SWIG) && !defined(_MSC_VER)
4114 __attribute__((packed))
4123 HF_PROGRAM = 0x0000,
4124 HF_EXECUTABLE = 0x0002,
4126 HF_LIBRARY = 0x2000,
4127 HF_RESERVED_MASK = 0xddfd
4132 HF_SPEC_UNKNOWN = 0x0000,
4135 HF_WINCHAR = 0x0003,
4136 HF_OS2CHAR = 0x0005,
4142 DLL_PROC_INIT = 0x0001,
4143 DLL_PROC_TERM = 0x0002,
4144 DLL_THRD_INIT = 0x0004,
4145 DLL_THRD_TERM = 0x0008,
4146 DLL_RESERVED_MASK = 0xfff0
4154 PAIR_EXCEPTIONS = 3,
4155 PAIR_CERTIFICATES = 4,
4156 PAIR_BASERELOCS = 5,
4158 PAIR_ARCHITECTURE = 7,
4161 PAIR_LOADCONFIG = 10,
4162 PAIR_BOUNDIMPORT = 11,
4164 PAIR_DELAYIMPORT = 13,
4165 PAIR_CLRRUNTIME = 14,
4166 PAIR_RESERVED15 = 15
4583 void addRvaSizePairs();
4587 virtual void unparse(std::ostream&)
const override;
4588 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
4589 void createTableSections();
4611 virtual const
char *format_name() const override ROSE_DEPRECATED("use
formatName");
4616 void add_rvasize_pairs() ROSE_DEPRECATED("use addRvaSizePairs");
4617 void create_table_sections() ROSE_DEPRECATED("use createTableSections");
4618 Rose::BinaryAnalysis::MemoryMap::Ptr get_loader_map() const ROSE_DEPRECATED("use get_loaderMap");
4619 void set_loader_map(const
Rose::BinaryAnalysis::MemoryMap::Ptr&) ROSE_DEPRECATED("use set_loaderMap");
4646DECLARE_LEAF_CLASS(AsmPEExportSection);
4647IS_SERIALIZABLE(AsmPEExportSection);
4649#ifndef DOCUMENTATION
4650AsmPEExportSection.useSmallHeader(
true);
4653DECLARE_HEADERS(AsmPEExportSection);
4654#if defined(SgAsmPEExportSection_HEADERS) || defined(DOCUMENTATION)
4655#ifdef ROSE_SgAsmPEExportSection_IMPL
4656#include <SgAsmPEExportDirectory.h>
4657#include <SgAsmPEExportEntryList.h>
4666#ifndef DOCUMENTATION
4667 AsmPEExportSection.setDataPrototype(
4668 "SgAsmPEExportDirectory*",
"exportDirectory",
"= nullptr",
4669 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
4672#ifndef DOCUMENTATION
4673 AsmPEExportSection.setDataPrototype(
4674 "SgAsmPEExportEntryList*",
"exports",
"= createAndParent<SgAsmPEExportEntryList>(this)",
4675 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
4678 DECLARE_OTHERS(AsmPEExportSection);
4679#if defined(SgAsmPEExportSection_OTHERS) || defined(DOCUMENTATION)
4682#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
4684 friend class boost::serialization::access;
4687 void serialize(S &s,
const unsigned ) {
4690 s & BOOST_SERIALIZATION_NVP(p_exportDirectory);
4691 s & BOOST_SERIALIZATION_NVP(p_exports);
4735 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
4771#ifndef DOCUMENTATION
4772AstNodeClass& AsmPESection = nonTerminalConstructor(
4777 SubclassListBuilder()
4778 | AsmPEExportSection
4779 | AsmPEImportSection
4780 | AsmPEStringSection
4782assert(AsmPESection.associatedGrammar !=
nullptr);
4783AsmPESection.setCppCondition(
"!defined(DOCUMENTATION)");
4784AsmPESection.isBoostSerializable(
true);
4785AsmPESection.setAutomaticGenerationOfConstructor(
false);
4786AsmPESection.setAutomaticGenerationOfDestructor(
false);
4789#ifndef DOCUMENTATION
4790AsmPESection.useSmallHeader(
true);
4793DECLARE_HEADERS(AsmPESection);
4794#if defined(SgAsmPESection_HEADERS) || defined(DOCUMENTATION)
4795#ifdef ROSE_SgAsmPESection_IMPL
4796#include <SgAsmPESectionTableEntry.h>
4805#ifndef DOCUMENTATION
4806 AsmPESection.setDataPrototype(
4807 "SgAsmPESectionTableEntry*",
"section_entry",
"= nullptr",
4808 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
4811 DECLARE_OTHERS(AsmPESection);
4812#if defined(SgAsmPESection_OTHERS) || defined(DOCUMENTATION)
4815#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
4817 friend class boost::serialization::access;
4820 void serialize(S &s,
const unsigned ) {
4823 s & BOOST_SERIALIZATION_NVP(p_section_entry);
4847 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
4880DECLARE_LEAF_CLASS(AsmPEExportEntryList);
4881IS_SERIALIZABLE(AsmPEExportEntryList);
4883#ifndef DOCUMENTATION
4884AsmPEExportEntryList.useSmallHeader(
true);
4887DECLARE_HEADERS(AsmPEExportEntryList);
4888#if defined(SgAsmPEExportEntryList_HEADERS) || defined(DOCUMENTATION)
4889#include <sageContainer.h>
4900#ifndef DOCUMENTATION
4901 AsmPEExportEntryList.setDataPrototype(
4902 "SgAsmPEExportEntryPtrList",
"exports",
"",
4903 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
4906 DECLARE_OTHERS(AsmPEExportEntryList);
4907#if defined(SgAsmPEExportEntryList_OTHERS) || defined(DOCUMENTATION)
4910#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
4912 friend class boost::serialization::access;
4915 void serialize(S &s,
const unsigned ) {
4918 s & BOOST_SERIALIZATION_NVP(p_exports);
4958DECLARE_LEAF_CLASS(AsmPEExportEntry);
4959IS_SERIALIZABLE(AsmPEExportEntry);
4961#ifndef DOCUMENTATION
4962AsmPEExportEntry.useSmallHeader(
true);
4965DECLARE_HEADERS(AsmPEExportEntry);
4966#if defined(SgAsmPEExportEntry_HEADERS) || defined(DOCUMENTATION)
4967#include <Rose/BinaryAnalysis/RelativeVirtualAddress.h>
4968#include <Sawyer/Result.h>
4976#ifndef DOCUMENTATION
4977 AsmPEExportEntry.setDataPrototype(
4978 "SgAsmGenericString*",
"name",
"= nullptr",
4979 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
4982#ifndef DOCUMENTATION
4983 AsmPEExportEntry.setDataPrototype(
4984 "unsigned",
"ordinal",
"= 0",
4985 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
4988#ifndef DOCUMENTATION
4989 AsmPEExportEntry.setDataPrototype(
4990 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"exportRva",
"",
4991 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
4994#ifndef DOCUMENTATION
4995 AsmPEExportEntry.setDataPrototype(
4996 "SgAsmGenericString*",
"forwarder",
"= nullptr",
4997 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
5000 DECLARE_OTHERS(AsmPEExportEntry);
5001#if defined(SgAsmPEExportEntry_OTHERS) || defined(DOCUMENTATION)
5004#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
5006 friend class boost::serialization::access;
5009 void serialize(S &s,
const unsigned ) {
5012 s & BOOST_SERIALIZATION_NVP(p_name);
5013 s & BOOST_SERIALIZATION_NVP(p_ordinal);
5014 s & BOOST_SERIALIZATION_NVP(p_exportRva);
5015 s & BOOST_SERIALIZATION_NVP(p_forwarder);
5063 void dump(FILE *f,
const char *prefix,ssize_t idx)
const;
5078 void set_export_rva(const
Rose::BinaryAnalysis::RelativeVirtualAddress&) ROSE_DEPRECATED("use
set_exportRva");
5105DECLARE_LEAF_CLASS(AsmPEExportDirectory);
5106IS_SERIALIZABLE(AsmPEExportDirectory);
5108#ifndef DOCUMENTATION
5109AsmPEExportDirectory.useSmallHeader(
true);
5112DECLARE_HEADERS(AsmPEExportDirectory);
5113#if defined(SgAsmPEExportDirectory_HEADERS) || defined(DOCUMENTATION)
5114#include <Rose/BinaryAnalysis/RelativeVirtualAddress.h>
5116#ifdef ROSE_SgAsmPEExportDirectory_IMPL
5117#include <SgAsmGenericString.h>
5126#ifndef DOCUMENTATION
5127 AsmPEExportDirectory.setDataPrototype(
5128 "unsigned",
"res1",
"= 0",
5129 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5132#ifndef DOCUMENTATION
5133 AsmPEExportDirectory.setDataPrototype(
5134 "time_t",
"timestamp",
"= 0",
5135 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5138#ifndef DOCUMENTATION
5139 AsmPEExportDirectory.setDataPrototype(
5140 "unsigned",
"vmajor",
"= 0",
5141 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5144#ifndef DOCUMENTATION
5145 AsmPEExportDirectory.setDataPrototype(
5146 "unsigned",
"vminor",
"= 0",
5147 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5150#ifndef DOCUMENTATION
5151 AsmPEExportDirectory.setDataPrototype(
5152 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"name_rva",
"",
5153 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5156#ifndef DOCUMENTATION
5157 AsmPEExportDirectory.setDataPrototype(
5158 "unsigned",
"ord_base",
"= 0",
5159 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5162#ifndef DOCUMENTATION
5163 AsmPEExportDirectory.setDataPrototype(
5164 "size_t",
"expaddr_n",
"= 0",
5165 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5168#ifndef DOCUMENTATION
5169 AsmPEExportDirectory.setDataPrototype(
5170 "size_t",
"nameptr_n",
"= 0",
5171 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5174#ifndef DOCUMENTATION
5175 AsmPEExportDirectory.setDataPrototype(
5176 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"expaddr_rva",
"",
5177 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5180#ifndef DOCUMENTATION
5181 AsmPEExportDirectory.setDataPrototype(
5182 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"nameptr_rva",
"",
5183 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5186#ifndef DOCUMENTATION
5187 AsmPEExportDirectory.setDataPrototype(
5188 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"ordinals_rva",
"",
5189 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5192#ifndef DOCUMENTATION
5193 AsmPEExportDirectory.setDataPrototype(
5194 "SgAsmGenericString*",
"name",
"= NULL",
5195 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
5198 DECLARE_OTHERS(AsmPEExportDirectory);
5199#if defined(SgAsmPEExportDirectory_OTHERS) || defined(DOCUMENTATION)
5202#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
5204 friend class boost::serialization::access;
5207 void serialize(S &s,
const unsigned ) {
5210 s & BOOST_SERIALIZATION_NVP(p_res1);
5211 s & BOOST_SERIALIZATION_NVP(p_timestamp);
5212 s & BOOST_SERIALIZATION_NVP(p_vmajor);
5213 s & BOOST_SERIALIZATION_NVP(p_vminor);
5214 s & BOOST_SERIALIZATION_NVP(p_name_rva);
5215 s & BOOST_SERIALIZATION_NVP(p_ord_base);
5216 s & BOOST_SERIALIZATION_NVP(p_expaddr_n);
5217 s & BOOST_SERIALIZATION_NVP(p_nameptr_n);
5218 s & BOOST_SERIALIZATION_NVP(p_expaddr_rva);
5219 s & BOOST_SERIALIZATION_NVP(p_nameptr_rva);
5220 s & BOOST_SERIALIZATION_NVP(p_ordinals_rva);
5221 s & BOOST_SERIALIZATION_NVP(p_name);
5242 uint32_t expaddr_rva;
5243 uint32_t nameptr_rva;
5244 uint32_t ordinals_rva;
5246#if !defined(SWIG) && !defined(_MSC_VER)
5247 __attribute__((packed))
5386 void dump(FILE *f,
const char *prefix, ssize_t idx)
const;
5413DECLARE_LEAF_CLASS(AsmOperandList);
5414IS_SERIALIZABLE(AsmOperandList);
5416#ifndef DOCUMENTATION
5417AsmOperandList.useSmallHeader(
true);
5420DECLARE_HEADERS(AsmOperandList);
5421#if defined(SgAsmOperandList_HEADERS) || defined(DOCUMENTATION)
5422#include <sageContainer.h>
5430#ifndef DOCUMENTATION
5431 AsmOperandList.setDataPrototype(
5432 "SgAsmExpressionPtrList",
"operands",
"",
5433 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
5436 DECLARE_OTHERS(AsmOperandList);
5437#if defined(SgAsmOperandList_OTHERS) || defined(DOCUMENTATION)
5440#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
5442 friend class boost::serialization::access;
5445 void serialize(S &s,
const unsigned ) {
5447 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmNode);
5448 s & BOOST_SERIALIZATION_NVP(p_operands);
5472 void append_operand(
SgAsmExpression*) ROSE_DEPRECATED(
"use appendOperand");
5499DECLARE_LEAF_CLASS(AsmNullInstruction);
5500IS_SERIALIZABLE(AsmNullInstruction);
5502#ifndef DOCUMENTATION
5503AsmNullInstruction.useSmallHeader(
true);
5510 DECLARE_OTHERS(AsmNullInstruction);
5511#if defined(SgAsmNullInstruction_OTHERS) || defined(DOCUMENTATION)
5514#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
5516 friend class boost::serialization::access;
5519 void serialize(S &s,
const unsigned ) {
5527 enum Kind { null_unknown };
5542 uint8_t
const& architectureId);
5562DECLARE_LEAF_CLASS(AsmNEStringTable);
5563IS_SERIALIZABLE(AsmNEStringTable);
5565#ifndef DOCUMENTATION
5566AsmNEStringTable.useSmallHeader(
true);
5569DECLARE_HEADERS(AsmNEStringTable);
5570#if defined(SgAsmNEStringTable_HEADERS) || defined(DOCUMENTATION)
5571#include <Rose/BinaryAnalysis/Address.h>
5578 DECLARE_OTHERS(AsmNEStringTable);
5579#if defined(SgAsmNEStringTable_OTHERS) || defined(DOCUMENTATION)
5582#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
5584 friend class boost::serialization::access;
5587 void serialize(S &s,
const unsigned ) {
5595 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
5623DECLARE_LEAF_CLASS(AsmNESectionTableEntry);
5624IS_SERIALIZABLE(AsmNESectionTableEntry);
5626#ifndef DOCUMENTATION
5627AsmNESectionTableEntry.useSmallHeader(
true);
5630DECLARE_HEADERS(AsmNESectionTableEntry);
5631#if defined(SgAsmNESectionTableEntry_HEADERS) || defined(DOCUMENTATION)
5632#include <Rose/BinaryAnalysis/Address.h>
5639#ifndef DOCUMENTATION
5640 AsmNESectionTableEntry.setDataPrototype(
5641 "unsigned",
"flags",
"= 0",
5642 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5645#ifndef DOCUMENTATION
5646 AsmNESectionTableEntry.setDataPrototype(
5647 "unsigned",
"sector",
"= 0",
5648 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5651#ifndef DOCUMENTATION
5652 AsmNESectionTableEntry.setDataPrototype(
5653 "Rose::BinaryAnalysis::Address",
"physicalSize",
"= 0",
5654 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5657#ifndef DOCUMENTATION
5658 AsmNESectionTableEntry.setDataPrototype(
5659 "Rose::BinaryAnalysis::Address",
"virtualSize",
"= 0",
5660 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5663 DECLARE_OTHERS(AsmNESectionTableEntry);
5664#if defined(SgAsmNESectionTableEntry_OTHERS) || defined(DOCUMENTATION)
5667#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
5669 friend class boost::serialization::access;
5672 void serialize(S &s,
const unsigned ) {
5675 s & BOOST_SERIALIZATION_NVP(p_flags);
5676 s & BOOST_SERIALIZATION_NVP(p_sector);
5677 s & BOOST_SERIALIZATION_NVP(p_physicalSize);
5678 s & BOOST_SERIALIZATION_NVP(p_virtualSize);
5692 uint16_t physical_size;
5694 uint16_t virtual_size;
5699 __attribute__((packed))
5707 enum NESectionFlags {
5708 SF_RESERVED = 0x0e08,
5710 SF_TYPE_MASK = 0x0007,
5716 SF_MOVABLE = 0x0010,
5718 SF_PRELOAD = 0x0040,
5719 SF_NOT_WRITABLE = 0x0080,
5720 SF_RELOCINFO = 0x0100,
5721 SF_DISCARDABLE = 0x1000,
5730 unsigned const& get_flags()
const;
5731 void set_flags(
unsigned const&);
5734 unsigned const& get_sector()
const;
5735 void set_sector(
unsigned const&);
5750 virtual void dump(FILE *f,
const char *prefix, ssize_t idx)
const {dump(f, prefix, idx, NULL);}
5751 void dump(FILE*,
const char *prefix, ssize_t idx,
SgAsmNEFileHeader *fhdr)
const;
5758 void set_physical_size(
Rose::BinaryAnalysis::Address) ROSE_DEPRECATED("use set_physicalSize");
5759 Rose::BinaryAnalysis::Address get_virtual_size() const ROSE_DEPRECATED("use get_virtualSize");
5760 void set_virtual_size(
Rose::BinaryAnalysis::Address) ROSE_DEPRECATED("use set_virtualSize");
5787DECLARE_LEAF_CLASS(AsmNESectionTable);
5788IS_SERIALIZABLE(AsmNESectionTable);
5790#ifndef DOCUMENTATION
5791AsmNESectionTable.useSmallHeader(
true);
5794DECLARE_HEADERS(AsmNESectionTable);
5795#if defined(SgAsmNESectionTable_HEADERS) || defined(DOCUMENTATION)
5796#include <Rose/BinaryAnalysis/Address.h>
5803#ifndef DOCUMENTATION
5804 AsmNESectionTable.setDataPrototype(
5805 "unsigned",
"flags",
"= 0",
5806 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5809#ifndef DOCUMENTATION
5810 AsmNESectionTable.setDataPrototype(
5811 "unsigned",
"sector",
"= 0",
5812 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5815#ifndef DOCUMENTATION
5816 AsmNESectionTable.setDataPrototype(
5817 "Rose::BinaryAnalysis::Address",
"physicalSize",
"= 0",
5818 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5821#ifndef DOCUMENTATION
5822 AsmNESectionTable.setDataPrototype(
5823 "Rose::BinaryAnalysis::Address",
"virtualSize",
"= 0",
5824 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
5827 DECLARE_OTHERS(AsmNESectionTable);
5828#if defined(SgAsmNESectionTable_OTHERS) || defined(DOCUMENTATION)
5831#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
5833 friend class boost::serialization::access;
5836 void serialize(S &s,
const unsigned ) {
5839 s & BOOST_SERIALIZATION_NVP(p_flags);
5840 s & BOOST_SERIALIZATION_NVP(p_sector);
5841 s & BOOST_SERIALIZATION_NVP(p_physicalSize);
5842 s & BOOST_SERIALIZATION_NVP(p_virtualSize);
5848 unsigned const& get_flags()
const;
5849 void set_flags(
unsigned const&);
5852 unsigned const& get_sector()
const;
5853 void set_sector(
unsigned const&);
5864 virtual void unparse(std::ostream&)
const override;
5865 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
5872 void set_physical_size(
Rose::BinaryAnalysis::Address) ROSE_DEPRECATED("use set_physicalSize");
5873 Rose::BinaryAnalysis::Address get_virtual_size() const ROSE_DEPRECATED("use get_virtualSize");
5874 void set_virtual_size(
Rose::BinaryAnalysis::Address) ROSE_DEPRECATED("use set_virtualSize");
5901DECLARE_LEAF_CLASS(AsmNESection);
5902IS_SERIALIZABLE(AsmNESection);
5904#ifndef DOCUMENTATION
5905AsmNESection.useSmallHeader(
true);
5908DECLARE_HEADERS(AsmNESection);
5909#if defined(SgAsmNESection_HEADERS) || defined(DOCUMENTATION)
5910#ifdef ROSE_SgAsmNESection_IMPL
5911#include <SgAsmNESectionTableEntry.h>
5912#include <SgAsmNERelocTable.h>
5920#ifndef DOCUMENTATION
5921 AsmNESection.setDataPrototype(
5922 "SgAsmNESectionTableEntry*",
"sectionTableEntry",
"= nullptr",
5923 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
5926#ifndef DOCUMENTATION
5927 AsmNESection.setDataPrototype(
5928 "SgAsmNERelocTable*",
"relocationTable",
"= nullptr",
5929 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
5932 DECLARE_OTHERS(AsmNESection);
5933#if defined(SgAsmNESection_OTHERS) || defined(DOCUMENTATION)
5936#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
5938 friend class boost::serialization::access;
5941 void serialize(S &s,
const unsigned ) {
5944 s & BOOST_SERIALIZATION_NVP(p_sectionTableEntry);
5945 s & BOOST_SERIALIZATION_NVP(p_relocationTable);
5959 virtual void unparse(std::ostream&)
const override;
5960 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
5968 SgAsmNERelocTable* get_reloc_table() const ROSE_DEPRECATED("use get_relocationTable");
5969 void set_reloc_table(
SgAsmNERelocTable*) ROSE_DEPRECATED("use set_relocationTable");
5996DECLARE_LEAF_CLASS(AsmNERelocTable);
5997IS_SERIALIZABLE(AsmNERelocTable);
5999#ifndef DOCUMENTATION
6000AsmNERelocTable.useSmallHeader(
true);
6007#ifndef DOCUMENTATION
6008 AsmNERelocTable.setDataPrototype(
6009 "SgAsmNERelocEntryPtrList",
"entries",
"",
6010 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
6013 DECLARE_OTHERS(AsmNERelocTable);
6014#if defined(SgAsmNERelocTable_OTHERS) || defined(DOCUMENTATION)
6017#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
6019 friend class boost::serialization::access;
6022 void serialize(S &s,
const unsigned ) {
6025 s & BOOST_SERIALIZATION_NVP(p_entries);
6031 SgAsmNERelocEntryPtrList
const& get_entries()
const;
6032 SgAsmNERelocEntryPtrList& get_entries();
6033 void set_entries(SgAsmNERelocEntryPtrList
const&);
6036 virtual void unparse(std::ostream&)
const override;
6037 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
6064DECLARE_LEAF_CLASS(AsmNERelocEntry);
6065IS_SERIALIZABLE(AsmNERelocEntry);
6067#ifndef DOCUMENTATION
6068AsmNERelocEntry.useSmallHeader(
true);
6071DECLARE_HEADERS(AsmNERelocEntry);
6072#if defined(SgAsmNERelocEntry_HEADERS) || defined(DOCUMENTATION)
6073#include <Rose/BinaryAnalysis/Address.h>
6080#ifndef DOCUMENTATION
6081 AsmNERelocEntry.setDataPrototype(
6082 "SgAsmNERelocEntry::NERelocSrcType",
"src_type",
"= SgAsmNERelocEntry::RF_SRCTYPE_8OFF",
6083 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6086#ifndef DOCUMENTATION
6087 AsmNERelocEntry.setDataPrototype(
6088 "SgAsmNERelocEntry::NERelocModifiers",
"modifier",
"= SgAsmNERelocEntry::RF_MODIFIER_SINGLE",
6089 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6092#ifndef DOCUMENTATION
6093 AsmNERelocEntry.setDataPrototype(
6094 "SgAsmNERelocEntry::NERelocTgtType",
"tgt_type",
"= SgAsmNERelocEntry::RF_TGTTYPE_IREF",
6095 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6098#ifndef DOCUMENTATION
6099 AsmNERelocEntry.setDataPrototype(
6100 "SgAsmNERelocEntry::NERelocFlags",
"flags",
"= SgAsmNERelocEntry::RF_ADDITIVE",
6101 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6104#ifndef DOCUMENTATION
6105 AsmNERelocEntry.setDataPrototype(
6106 "Rose::BinaryAnalysis::Address",
"src_offset",
"= 0",
6107 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6110#ifndef DOCUMENTATION
6111 AsmNERelocEntry.setDataPrototype(
6112 "SgAsmNERelocEntry::iref_type",
"iref",
"",
6113 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6116#ifndef DOCUMENTATION
6117 AsmNERelocEntry.setDataPrototype(
6118 "SgAsmNERelocEntry::iord_type",
"iord",
"",
6119 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6122#ifndef DOCUMENTATION
6123 AsmNERelocEntry.setDataPrototype(
6124 "SgAsmNERelocEntry::iname_type",
"iname",
"",
6125 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6128#ifndef DOCUMENTATION
6129 AsmNERelocEntry.setDataPrototype(
6130 "SgAsmNERelocEntry::osfixup_type",
"osfixup",
"",
6131 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6134 DECLARE_OTHERS(AsmNERelocEntry);
6135#if defined(SgAsmNERelocEntry_OTHERS) || defined(DOCUMENTATION)
6138#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
6140 friend class boost::serialization::access;
6143 void serialize(S &s,
const unsigned ) {
6146 s & BOOST_SERIALIZATION_NVP(p_src_type);
6147 s & BOOST_SERIALIZATION_NVP(p_modifier);
6148 s & BOOST_SERIALIZATION_NVP(p_tgt_type);
6149 s & BOOST_SERIALIZATION_NVP(p_flags);
6150 s & BOOST_SERIALIZATION_NVP(p_src_offset);
6151 s & BOOST_SERIALIZATION_NVP(p_iref);
6152 s & BOOST_SERIALIZATION_NVP(p_iord);
6153 s & BOOST_SERIALIZATION_NVP(p_iname);
6154 s & BOOST_SERIALIZATION_NVP(p_osfixup);
6164 enum NERelocSrcType {
6165 RF_SRCTYPE_8OFF = 0,
6166 RF_SRCTYPE_WORDSEG = 2,
6167 RF_SRCTYPE_16PTR = 3,
6168 RF_SRCTYPE_16OFF = 5,
6169 RF_SRCTYPE_32PTR = 6,
6170 RF_SRCTYPE_32OFF = 7,
6171 RF_SRCTYPE_NEARCALL = 8,
6172 RF_SRCTYPE_48PTR = 11,
6173 RF_SRCTYPE_32OFF_b = 13
6176 enum NERelocTgtType {
6177 RF_TGTTYPE_IREF = 0,
6178 RF_TGTTYPE_IORD = 1,
6179 RF_TGTTYPE_INAME = 2,
6180 RF_TGTTYPE_OSFIXUP = 3
6183 enum NERelocModifiers {
6184 RF_MODIFIER_SINGLE = 1,
6185 RF_MODIFIER_MULTI = 3
6193 RF_16SECTION = 0x10,
6205#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
6207 void serialize(S &s,
const unsigned ) {
6208 s & BOOST_SERIALIZATION_NVP(sect_idx);
6209 s & BOOST_SERIALIZATION_NVP(res1);
6210 s & BOOST_SERIALIZATION_NVP(tgt_offset);
6215 friend std::ostream & operator<< ( std::ostream & os,
const iref_type & x );
6225#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
6227 void serialize(S &s,
const unsigned ) {
6228 s & BOOST_SERIALIZATION_NVP(modref);
6229 s & BOOST_SERIALIZATION_NVP(ordinal);
6230 s & BOOST_SERIALIZATION_NVP(addend);
6235 friend std::ostream & operator<< ( std::ostream & os,
const iord_type & x );
6245#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
6247 void serialize(S &s,
const unsigned ) {
6248 s & BOOST_SERIALIZATION_NVP(modref);
6249 s & BOOST_SERIALIZATION_NVP(nm_off);
6250 s & BOOST_SERIALIZATION_NVP(addend);
6255 friend std::ostream & operator<< ( std::ostream & os,
const iname_type & x );
6264#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
6266 void serialize(S &s,
const unsigned ) {
6267 s & BOOST_SERIALIZATION_NVP(type);
6268 s & BOOST_SERIALIZATION_NVP(res3);
6273 friend std::ostream & operator<< ( std::ostream & os,
const osfixup_type & x );
6283 SgAsmNERelocEntry::NERelocSrcType
const& get_src_type()
const;
6284 void set_src_type(SgAsmNERelocEntry::NERelocSrcType
const&);
6287 SgAsmNERelocEntry::NERelocModifiers
const& get_modifier()
const;
6288 void set_modifier(SgAsmNERelocEntry::NERelocModifiers
const&);
6291 SgAsmNERelocEntry::NERelocTgtType
const& get_tgt_type()
const;
6292 void set_tgt_type(SgAsmNERelocEntry::NERelocTgtType
const&);
6295 SgAsmNERelocEntry::NERelocFlags
const& get_flags()
const;
6296 void set_flags(SgAsmNERelocEntry::NERelocFlags
const&);
6323 void dump(FILE*,
const char *prefix, ssize_t idx)
const;
6350DECLARE_LEAF_CLASS(AsmNENameTable);
6351IS_SERIALIZABLE(AsmNENameTable);
6353#ifndef DOCUMENTATION
6354AsmNENameTable.useSmallHeader(
true);
6357DECLARE_HEADERS(AsmNENameTable);
6358#if defined(SgAsmNENameTable_HEADERS) || defined(DOCUMENTATION)
6359#include <Rose/BinaryAnalysis/Address.h>
6366#ifndef DOCUMENTATION
6367 AsmNENameTable.setDataPrototype(
6368 "SgStringList",
"names",
"",
6369 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6372#ifndef DOCUMENTATION
6373 AsmNENameTable.setDataPrototype(
6374 "SgUnsignedList",
"ordinals",
"",
6375 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6378 DECLARE_OTHERS(AsmNENameTable);
6379#if defined(SgAsmNENameTable_OTHERS) || defined(DOCUMENTATION)
6382#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
6384 friend class boost::serialization::access;
6387 void serialize(S &s,
const unsigned ) {
6390 s & BOOST_SERIALIZATION_NVP(p_names);
6391 s & BOOST_SERIALIZATION_NVP(p_ordinals);
6397 SgStringList
const& get_names()
const;
6398 void set_names(SgStringList
const&);
6401 SgUnsignedList
const& get_ordinals()
const;
6402 void set_ordinals(SgUnsignedList
const&);
6405 virtual void unparse(std::ostream&)
const override;
6406 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
6407 std::vector<std::string> get_namesByOrdinal(
unsigned ordinal);
6413 std::vector<std::string> get_names_by_ordinal(
unsigned) ROSE_DEPRECATED(
"use get_namesByOrdinal");
6440DECLARE_LEAF_CLASS(AsmNEModuleTable);
6441IS_SERIALIZABLE(AsmNEModuleTable);
6443#ifndef DOCUMENTATION
6444AsmNEModuleTable.useSmallHeader(
true);
6447DECLARE_HEADERS(AsmNEModuleTable);
6448#if defined(SgAsmNEModuleTable_HEADERS) || defined(DOCUMENTATION)
6449#include <Rose/BinaryAnalysis/Address.h>
6451#ifdef ROSE_SgAsmNEModuleTable_IMPL
6452#include <SgAsmNEStringTable.h>
6460#ifndef DOCUMENTATION
6461 AsmNEModuleTable.setDataPrototype(
6462 "SgAsmNEStringTable*",
"strtab",
"= nullptr",
6463 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
6466#ifndef DOCUMENTATION
6467 AsmNEModuleTable.setDataPrototype(
6468 "SgAddressList",
"nameOffsets",
"",
6469 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6472#ifndef DOCUMENTATION
6473 AsmNEModuleTable.setDataPrototype(
6474 "SgStringList",
"names",
"",
6475 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6478 DECLARE_OTHERS(AsmNEModuleTable);
6479#if defined(SgAsmNEModuleTable_OTHERS) || defined(DOCUMENTATION)
6482#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
6484 friend class boost::serialization::access;
6487 void serialize(S &s,
const unsigned ) {
6490 s & BOOST_SERIALIZATION_NVP(p_strtab);
6491 s & BOOST_SERIALIZATION_NVP(p_nameOffsets);
6492 s & BOOST_SERIALIZATION_NVP(p_names);
6502 SgAddressList
const& get_nameOffsets()
const;
6503 void set_nameOffsets(SgAddressList
const&);
6506 SgStringList
const& get_names()
const;
6507 void set_names(SgStringList
const&);
6511 virtual void unparse(std::ostream&)
const override;
6512 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
6518 const SgAddressList& get_name_offsets() const ROSE_DEPRECATED("use get_nameOffsets");
6519 void set_name_offsets(const SgAddressList&) ROSE_DEPRECATED("use set_nameOffsets");
6546DECLARE_LEAF_CLASS(AsmNEFileHeader);
6547IS_SERIALIZABLE(AsmNEFileHeader);
6549#ifndef DOCUMENTATION
6550AsmNEFileHeader.useSmallHeader(
true);
6553DECLARE_HEADERS(AsmNEFileHeader);
6554#if defined(SgAsmNEFileHeader_HEADERS) || defined(DOCUMENTATION)
6555#include <Rose/BinaryAnalysis/Address.h>
6557#ifdef ROSE_SgAsmNEFileHeader_IMPL
6558#include <SgAsmDOSExtendedHeader.h>
6559#include <SgAsmNEEntryTable.h>
6560#include <SgAsmNEModuleTable.h>
6561#include <SgAsmNENameTable.h>
6562#include <SgAsmNESectionTable.h>
6570#ifndef DOCUMENTATION
6571 AsmNEFileHeader.setDataPrototype(
6572 "unsigned",
"e_linker_major",
"= 0",
6573 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6576#ifndef DOCUMENTATION
6577 AsmNEFileHeader.setDataPrototype(
6578 "unsigned",
"e_linker_minor",
"= 0",
6579 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6582#ifndef DOCUMENTATION
6583 AsmNEFileHeader.setDataPrototype(
6584 "unsigned",
"e_checksum",
"= 0",
6585 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6588#ifndef DOCUMENTATION
6589 AsmNEFileHeader.setDataPrototype(
6590 "unsigned",
"e_flags1",
"= 0",
6591 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6594#ifndef DOCUMENTATION
6595 AsmNEFileHeader.setDataPrototype(
6596 "unsigned",
"e_autodata_sn",
"= 0",
6597 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6600#ifndef DOCUMENTATION
6601 AsmNEFileHeader.setDataPrototype(
6602 "unsigned",
"e_bss_size",
"= 0",
6603 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6606#ifndef DOCUMENTATION
6607 AsmNEFileHeader.setDataPrototype(
6608 "unsigned",
"e_stack_size",
"= 0",
6609 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6612#ifndef DOCUMENTATION
6613 AsmNEFileHeader.setDataPrototype(
6614 "unsigned",
"e_csip",
"= 0",
6615 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6618#ifndef DOCUMENTATION
6619 AsmNEFileHeader.setDataPrototype(
6620 "unsigned",
"e_sssp",
"= 0",
6621 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6624#ifndef DOCUMENTATION
6625 AsmNEFileHeader.setDataPrototype(
6626 "unsigned",
"e_nsections",
"= 0",
6627 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6630#ifndef DOCUMENTATION
6631 AsmNEFileHeader.setDataPrototype(
6632 "unsigned",
"e_nmodrefs",
"= 0",
6633 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6636#ifndef DOCUMENTATION
6637 AsmNEFileHeader.setDataPrototype(
6638 "unsigned",
"e_nnonresnames",
"= 0",
6639 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6642#ifndef DOCUMENTATION
6643 AsmNEFileHeader.setDataPrototype(
6644 "unsigned",
"e_nmovable_entries",
"= 0",
6645 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6648#ifndef DOCUMENTATION
6649 AsmNEFileHeader.setDataPrototype(
6650 "unsigned",
"e_sector_align",
"= 0",
6651 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6654#ifndef DOCUMENTATION
6655 AsmNEFileHeader.setDataPrototype(
6656 "unsigned",
"e_nresources",
"= 0",
6657 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6660#ifndef DOCUMENTATION
6661 AsmNEFileHeader.setDataPrototype(
6662 "unsigned",
"e_exetype",
"= 0",
6663 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6666#ifndef DOCUMENTATION
6667 AsmNEFileHeader.setDataPrototype(
6668 "unsigned",
"e_flags2",
"= 0",
6669 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6672#ifndef DOCUMENTATION
6673 AsmNEFileHeader.setDataPrototype(
6674 "unsigned",
"e_res1",
"= 0",
6675 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6678#ifndef DOCUMENTATION
6679 AsmNEFileHeader.setDataPrototype(
6680 "unsigned",
"e_winvers",
"= 0",
6681 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6684#ifndef DOCUMENTATION
6685 AsmNEFileHeader.setDataPrototype(
6686 "Rose::BinaryAnalysis::Address",
"e_entrytab_rfo",
"= 0",
6687 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6690#ifndef DOCUMENTATION
6691 AsmNEFileHeader.setDataPrototype(
6692 "Rose::BinaryAnalysis::Address",
"e_entrytab_size",
"= 0",
6693 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6696#ifndef DOCUMENTATION
6697 AsmNEFileHeader.setDataPrototype(
6698 "Rose::BinaryAnalysis::Address",
"e_sectab_rfo",
"= 0",
6699 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6702#ifndef DOCUMENTATION
6703 AsmNEFileHeader.setDataPrototype(
6704 "Rose::BinaryAnalysis::Address",
"e_rsrctab_rfo",
"= 0",
6705 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6708#ifndef DOCUMENTATION
6709 AsmNEFileHeader.setDataPrototype(
6710 "Rose::BinaryAnalysis::Address",
"e_resnametab_rfo",
"= 0",
6711 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6714#ifndef DOCUMENTATION
6715 AsmNEFileHeader.setDataPrototype(
6716 "Rose::BinaryAnalysis::Address",
"e_modreftab_rfo",
"= 0",
6717 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6720#ifndef DOCUMENTATION
6721 AsmNEFileHeader.setDataPrototype(
6722 "Rose::BinaryAnalysis::Address",
"e_importnametab_rfo",
"= 0",
6723 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6726#ifndef DOCUMENTATION
6727 AsmNEFileHeader.setDataPrototype(
6728 "Rose::BinaryAnalysis::Address",
"e_nonresnametab_offset",
"= 0",
6729 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6732#ifndef DOCUMENTATION
6733 AsmNEFileHeader.setDataPrototype(
6734 "Rose::BinaryAnalysis::Address",
"e_fastload_sector",
"= 0",
6735 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6738#ifndef DOCUMENTATION
6739 AsmNEFileHeader.setDataPrototype(
6740 "Rose::BinaryAnalysis::Address",
"e_fastload_nsectors",
"= 0",
6741 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6744#ifndef DOCUMENTATION
6745 AsmNEFileHeader.setDataPrototype(
6746 "SgAsmDOSExtendedHeader*",
"dos2Header",
"= nullptr",
6747 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
6750#ifndef DOCUMENTATION
6751 AsmNEFileHeader.setDataPrototype(
6752 "SgAsmNESectionTable*",
"sectionTable",
"= nullptr",
6753 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
6756#ifndef DOCUMENTATION
6757 AsmNEFileHeader.setDataPrototype(
6758 "SgAsmNENameTable*",
"residentNameTable",
"= nullptr",
6759 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
6762#ifndef DOCUMENTATION
6763 AsmNEFileHeader.setDataPrototype(
6764 "SgAsmNENameTable*",
"nonresidentNameTable",
"= nullptr",
6765 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
6768#ifndef DOCUMENTATION
6769 AsmNEFileHeader.setDataPrototype(
6770 "SgAsmNEModuleTable*",
"moduleTable",
"= nullptr",
6771 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
6774#ifndef DOCUMENTATION
6775 AsmNEFileHeader.setDataPrototype(
6776 "SgAsmNEEntryTable*",
"entryTable",
"= nullptr",
6777 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
6780 DECLARE_OTHERS(AsmNEFileHeader);
6781#if defined(SgAsmNEFileHeader_OTHERS) || defined(DOCUMENTATION)
6784#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
6786 friend class boost::serialization::access;
6789 void serialize(S &s,
const unsigned ) {
6792 s & BOOST_SERIALIZATION_NVP(p_e_linker_major);
6793 s & BOOST_SERIALIZATION_NVP(p_e_linker_minor);
6794 s & BOOST_SERIALIZATION_NVP(p_e_checksum);
6795 s & BOOST_SERIALIZATION_NVP(p_e_flags1);
6796 s & BOOST_SERIALIZATION_NVP(p_e_autodata_sn);
6797 s & BOOST_SERIALIZATION_NVP(p_e_bss_size);
6798 s & BOOST_SERIALIZATION_NVP(p_e_stack_size);
6799 s & BOOST_SERIALIZATION_NVP(p_e_csip);
6800 s & BOOST_SERIALIZATION_NVP(p_e_sssp);
6801 s & BOOST_SERIALIZATION_NVP(p_e_nsections);
6802 s & BOOST_SERIALIZATION_NVP(p_e_nmodrefs);
6803 s & BOOST_SERIALIZATION_NVP(p_e_nnonresnames);
6804 s & BOOST_SERIALIZATION_NVP(p_e_nmovable_entries);
6805 s & BOOST_SERIALIZATION_NVP(p_e_sector_align);
6806 s & BOOST_SERIALIZATION_NVP(p_e_nresources);
6807 s & BOOST_SERIALIZATION_NVP(p_e_exetype);
6808 s & BOOST_SERIALIZATION_NVP(p_e_flags2);
6809 s & BOOST_SERIALIZATION_NVP(p_e_res1);
6810 s & BOOST_SERIALIZATION_NVP(p_e_winvers);
6811 s & BOOST_SERIALIZATION_NVP(p_e_entrytab_rfo);
6812 s & BOOST_SERIALIZATION_NVP(p_e_entrytab_size);
6813 s & BOOST_SERIALIZATION_NVP(p_e_sectab_rfo);
6814 s & BOOST_SERIALIZATION_NVP(p_e_rsrctab_rfo);
6815 s & BOOST_SERIALIZATION_NVP(p_e_resnametab_rfo);
6816 s & BOOST_SERIALIZATION_NVP(p_e_modreftab_rfo);
6817 s & BOOST_SERIALIZATION_NVP(p_e_importnametab_rfo);
6818 s & BOOST_SERIALIZATION_NVP(p_e_nonresnametab_offset);
6819 s & BOOST_SERIALIZATION_NVP(p_e_fastload_sector);
6820 s & BOOST_SERIALIZATION_NVP(p_e_fastload_nsectors);
6821 s & BOOST_SERIALIZATION_NVP(p_dos2Header);
6822 s & BOOST_SERIALIZATION_NVP(p_sectionTable);
6823 s & BOOST_SERIALIZATION_NVP(p_residentNameTable);
6824 s & BOOST_SERIALIZATION_NVP(p_nonresidentNameTable);
6825 s & BOOST_SERIALIZATION_NVP(p_moduleTable);
6826 s & BOOST_SERIALIZATION_NVP(p_entryTable);
6845 unsigned char e_magic[2];
6846 unsigned char e_linker_major;
6847 unsigned char e_linker_minor;
6848 uint16_t e_entrytab_rfo;
6849 uint16_t e_entrytab_size;
6850 uint32_t e_checksum;
6852 uint16_t e_autodata_sn;
6853 uint16_t e_bss_size;
6854 uint16_t e_stack_size;
6857 uint16_t e_nsections;
6858 uint16_t e_nmodrefs;
6859 uint16_t e_nnonresnames;
6860 uint16_t e_sectab_rfo;
6861 uint16_t e_rsrctab_rfo;
6862 uint16_t e_resnametab_rfo;
6863 uint16_t e_modreftab_rfo;
6864 uint16_t e_importnametab_rfo;
6865 uint32_t e_nonresnametab_offset;
6866 uint16_t e_nmovable_entries;
6867 uint16_t e_sector_align;
6868 uint16_t e_nresources;
6869 unsigned char e_exetype;
6870 unsigned char e_flags2;
6871 uint16_t e_fastload_sector;
6872 uint16_t e_fastload_nsectors;
6879 __attribute__((packed))
6893 HF1_RESERVED = 0x57f4,
6894 HF1_NO_DATA = 0x0000,
6895 HF1_SINGLE_DATA = 0x0001,
6896 HF1_MULTIPLE_DATA = 0x0002,
6897 HF1_LOADER_SEGMENT = 0x0800,
6898 HF1_FATAL_ERRORS = 0x2000,
6899 HF1_LIBRARY = 0x8000
6904 HF2_RESERVED = 0xf1,
6905 HF2_PROTECTED_MODE = 0x02,
6915 unsigned const& get_e_linker_major()
const;
6916 void set_e_linker_major(
unsigned const&);
6919 unsigned const& get_e_linker_minor()
const;
6920 void set_e_linker_minor(
unsigned const&);
6923 unsigned const& get_e_checksum()
const;
6924 void set_e_checksum(
unsigned const&);
6927 unsigned const& get_e_flags1()
const;
6928 void set_e_flags1(
unsigned const&);
6931 unsigned const& get_e_autodata_sn()
const;
6932 void set_e_autodata_sn(
unsigned const&);
6935 unsigned const& get_e_bss_size()
const;
6936 void set_e_bss_size(
unsigned const&);
6939 unsigned const& get_e_stack_size()
const;
6940 void set_e_stack_size(
unsigned const&);
6943 unsigned const& get_e_csip()
const;
6944 void set_e_csip(
unsigned const&);
6947 unsigned const& get_e_sssp()
const;
6948 void set_e_sssp(
unsigned const&);
6951 unsigned const& get_e_nsections()
const;
6952 void set_e_nsections(
unsigned const&);
6955 unsigned const& get_e_nmodrefs()
const;
6956 void set_e_nmodrefs(
unsigned const&);
6959 unsigned const& get_e_nnonresnames()
const;
6960 void set_e_nnonresnames(
unsigned const&);
6963 unsigned const& get_e_nmovable_entries()
const;
6964 void set_e_nmovable_entries(
unsigned const&);
6967 unsigned const& get_e_sector_align()
const;
6968 void set_e_sector_align(
unsigned const&);
6971 unsigned const& get_e_nresources()
const;
6972 void set_e_nresources(
unsigned const&);
6975 unsigned const& get_e_exetype()
const;
6976 void set_e_exetype(
unsigned const&);
6979 unsigned const& get_e_flags2()
const;
6980 void set_e_flags2(
unsigned const&);
6983 unsigned const& get_e_res1()
const;
6984 void set_e_res1(
unsigned const&);
6987 unsigned const& get_e_winvers()
const;
6988 void set_e_winvers(
unsigned const&);
7061 virtual void unparse(std::ostream&)
const override;
7063 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
7076 SgAsmNENameTable* get_resname_table() const ROSE_DEPRECATED("use get_residentNameTable");
7077 void set_resname_table(
SgAsmNENameTable*) ROSE_DEPRECATED("use set_residentNameTable");
7078 SgAsmNENameTable* get_nonresname_table() const ROSE_DEPRECATED("use get_nonresidentNameTable");
7079 void set_nonresname_table(
SgAsmNENameTable*) ROSE_DEPRECATED("use set_nonresidentNameTable");
7082 SgAsmNEEntryTable* get_entry_table() const ROSE_DEPRECATED("use get_entryTable");
7085 virtual const
char *format_name() const override ROSE_DEPRECATED("use
formatName");
7112DECLARE_LEAF_CLASS(AsmNEEntryTable);
7113IS_SERIALIZABLE(AsmNEEntryTable);
7115#ifndef DOCUMENTATION
7116AsmNEEntryTable.useSmallHeader(
true);
7119DECLARE_HEADERS(AsmNEEntryTable);
7120#if defined(SgAsmNEEntryTable_HEADERS) || defined(DOCUMENTATION)
7121#include <Rose/BinaryAnalysis/Address.h>
7128#ifndef DOCUMENTATION
7129 AsmNEEntryTable.setDataPrototype(
7130 "SgSizeTList",
"bundle_sizes",
"",
7131 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7134#ifndef DOCUMENTATION
7135 AsmNEEntryTable.setDataPrototype(
7136 "SgAsmNEEntryPointPtrList",
"entries",
"",
7137 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
7140 DECLARE_OTHERS(AsmNEEntryTable);
7141#if defined(SgAsmNEEntryTable_OTHERS) || defined(DOCUMENTATION)
7144#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
7146 friend class boost::serialization::access;
7149 void serialize(S &s,
const unsigned ) {
7152 s & BOOST_SERIALIZATION_NVP(p_bundle_sizes);
7153 s & BOOST_SERIALIZATION_NVP(p_entries);
7159 SgSizeTList
const& get_bundle_sizes()
const;
7160 void set_bundle_sizes(SgSizeTList
const&);
7163 SgAsmNEEntryPointPtrList
const& get_entries()
const;
7164 SgAsmNEEntryPointPtrList& get_entries();
7165 void set_entries(SgAsmNEEntryPointPtrList
const&);
7168 void populate_entries();
7169 virtual void unparse(std::ostream&)
const override;
7170 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
7197DECLARE_LEAF_CLASS(AsmNEEntryPoint);
7198IS_SERIALIZABLE(AsmNEEntryPoint);
7200#ifndef DOCUMENTATION
7201AsmNEEntryPoint.useSmallHeader(
true);
7208#ifndef DOCUMENTATION
7209 AsmNEEntryPoint.setDataPrototype(
7210 "SgAsmNEEntryPoint::NEEntryFlags",
"flags",
"= SgAsmNEEntryPoint::EF_ZERO",
7211 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7214#ifndef DOCUMENTATION
7215 AsmNEEntryPoint.setDataPrototype(
7216 "unsigned",
"int3f",
"= 0",
7217 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7220#ifndef DOCUMENTATION
7221 AsmNEEntryPoint.setDataPrototype(
7222 "unsigned",
"sectionIndex",
"= 0",
7223 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7226#ifndef DOCUMENTATION
7227 AsmNEEntryPoint.setDataPrototype(
7228 "unsigned",
"sectionOffset",
"= 0",
7229 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7232 DECLARE_OTHERS(AsmNEEntryPoint);
7233#if defined(SgAsmNEEntryPoint_OTHERS) || defined(DOCUMENTATION)
7236#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
7238 friend class boost::serialization::access;
7241 void serialize(S &s,
const unsigned ) {
7244 s & BOOST_SERIALIZATION_NVP(p_flags);
7245 s & BOOST_SERIALIZATION_NVP(p_int3f);
7246 s & BOOST_SERIALIZATION_NVP(p_sectionIndex);
7247 s & BOOST_SERIALIZATION_NVP(p_sectionOffset);
7267 SgAsmNEEntryPoint::NEEntryFlags
const& get_flags()
const;
7268 void set_flags(SgAsmNEEntryPoint::NEEntryFlags
const&);
7271 unsigned const& get_int3f()
const;
7272 void set_int3f(
unsigned const&);
7275 unsigned const& get_sectionIndex()
const;
7276 void set_sectionIndex(
unsigned const&);
7279 unsigned const& get_sectionOffset()
const;
7280 void set_sectionOffset(
unsigned const&);
7285 SgAsmNEEntryPoint(SgAsmNEEntryPoint::NEEntryFlags flags,
unsigned int3f,
unsigned s_idx,
unsigned s_off);
7286 void dump(FILE*,
const char *prefix, ssize_t idx)
const;
7292 unsigned get_section_idx()
const ROSE_DEPRECATED(
"use get_sectionIndex");
7293 void set_section_idx(
unsigned) ROSE_DEPRECATED(
"use set_sectionIndex");
7294 unsigned get_section_offset()
const ROSE_DEPRECATED(
"use get_sectionOffset");
7295 void set_section_offset(
unsigned) ROSE_DEPRECATED(
"use set_sectionOffset");
7322DECLARE_LEAF_CLASS(AsmMipsInstruction);
7323IS_SERIALIZABLE(AsmMipsInstruction);
7325#ifndef DOCUMENTATION
7326AsmMipsInstruction.useSmallHeader(
true);
7329DECLARE_HEADERS(AsmMipsInstruction);
7330#if defined(SgAsmMipsInstruction_HEADERS) || defined(DOCUMENTATION)
7331#include <Rose/BinaryAnalysis/InstructionEnumsMips.h>
7339#ifndef DOCUMENTATION
7340 AsmMipsInstruction.setDataPrototype(
7341 "Rose::BinaryAnalysis::MipsInstructionKind",
"kind",
"= Rose::BinaryAnalysis::mips_unknown_instruction",
7342 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7345 DECLARE_OTHERS(AsmMipsInstruction);
7346#if defined(SgAsmMipsInstruction_OTHERS) || defined(DOCUMENTATION)
7349#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
7351 friend class boost::serialization::access;
7354 void serialize(S &s,
const unsigned ) {
7357 s & BOOST_SERIALIZATION_NVP(p_kind);
7369 Rose::BinaryAnalysis::MipsInstructionKind
const&
get_kind()
const;
7370 void set_kind(Rose::BinaryAnalysis::MipsInstructionKind
const&);
7386 uint8_t
const& architectureId,
7387 Rose::BinaryAnalysis::MipsInstructionKind
const& kind);
7407DECLARE_LEAF_CLASS(AsmMemoryReferenceExpression);
7408IS_SERIALIZABLE(AsmMemoryReferenceExpression);
7410#ifndef DOCUMENTATION
7411AsmMemoryReferenceExpression.useSmallHeader(
true);
7419#ifndef DOCUMENTATION
7420 AsmMemoryReferenceExpression.setDataPrototype(
7421 "SgAsmExpression*",
"address",
"= nullptr",
7422 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
7425#ifndef DOCUMENTATION
7426 AsmMemoryReferenceExpression.setDataPrototype(
7427 "SgAsmExpression*",
"segment",
"= nullptr",
7428 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
7431 DECLARE_OTHERS(AsmMemoryReferenceExpression);
7432#if defined(SgAsmMemoryReferenceExpression_OTHERS) || defined(DOCUMENTATION)
7435#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
7437 friend class boost::serialization::access;
7440 void serialize(S &s,
const unsigned ) {
7443 s & BOOST_SERIALIZATION_NVP(p_address);
7444 s & BOOST_SERIALIZATION_NVP(p_segment);
7504DECLARE_LEAF_CLASS(AsmM68kInstruction);
7505IS_SERIALIZABLE(AsmM68kInstruction);
7507#ifndef DOCUMENTATION
7508AsmM68kInstruction.useSmallHeader(
true);
7511DECLARE_HEADERS(AsmM68kInstruction);
7512#if defined(SgAsmM68kInstruction_HEADERS) || defined(DOCUMENTATION)
7513#include <Rose/BinaryAnalysis/InstructionEnumsM68k.h>
7520#ifndef DOCUMENTATION
7521 AsmM68kInstruction.setDataPrototype(
7522 "Rose::BinaryAnalysis::M68kInstructionKind",
"kind",
"= Rose::BinaryAnalysis::m68k_unknown_instruction",
7523 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7526#ifndef DOCUMENTATION
7527 AsmM68kInstruction.setDataPrototype(
7528 "Rose::BinaryAnalysis::M68kDataFormat",
"dataFormat",
"= Rose::BinaryAnalysis::m68k_fmt_unknown",
7529 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7532 DECLARE_OTHERS(AsmM68kInstruction);
7533#if defined(SgAsmM68kInstruction_OTHERS) || defined(DOCUMENTATION)
7536#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
7538 friend class boost::serialization::access;
7541 void serialize(S &s,
const unsigned ) {
7544 s & BOOST_SERIALIZATION_NVP(p_kind);
7545 s & BOOST_SERIALIZATION_NVP(p_dataFormat);
7557 Rose::BinaryAnalysis::M68kInstructionKind
const&
get_kind()
const;
7558 void set_kind(Rose::BinaryAnalysis::M68kInstructionKind
const&);
7582 uint8_t
const& architectureId,
7583 Rose::BinaryAnalysis::M68kInstructionKind
const& kind,
7584 Rose::BinaryAnalysis::M68kDataFormat
const& dataFormat);
7604DECLARE_LEAF_CLASS(AsmLESectionTableEntry);
7605IS_SERIALIZABLE(AsmLESectionTableEntry);
7607#ifndef DOCUMENTATION
7608AsmLESectionTableEntry.useSmallHeader(
true);
7611DECLARE_HEADERS(AsmLESectionTableEntry);
7612#if defined(SgAsmLESectionTableEntry_HEADERS) || defined(DOCUMENTATION)
7613#include <Rose/BinaryAnalysis/Address.h>
7614#include <Rose/BinaryAnalysis/ByteOrder.h>
7621#ifndef DOCUMENTATION
7622 AsmLESectionTableEntry.setDataPrototype(
7623 "unsigned",
"flags",
"= 0",
7624 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7627#ifndef DOCUMENTATION
7628 AsmLESectionTableEntry.setDataPrototype(
7629 "unsigned",
"pageMapIndex",
"= 0",
7630 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7633#ifndef DOCUMENTATION
7634 AsmLESectionTableEntry.setDataPrototype(
7635 "unsigned",
"pageMapNEntries",
"= 0",
7636 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7639#ifndef DOCUMENTATION
7640 AsmLESectionTableEntry.setDataPrototype(
7641 "unsigned",
"res1",
"= 0",
7642 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7645#ifndef DOCUMENTATION
7646 AsmLESectionTableEntry.setDataPrototype(
7647 "Rose::BinaryAnalysis::Address",
"mappedSize",
"= 0",
7648 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7651#ifndef DOCUMENTATION
7652 AsmLESectionTableEntry.setDataPrototype(
7653 "Rose::BinaryAnalysis::Address",
"baseAddr",
"= 0",
7654 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
7657 DECLARE_OTHERS(AsmLESectionTableEntry);
7658#if defined(SgAsmLESectionTableEntry_OTHERS) || defined(DOCUMENTATION)
7661#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
7663 friend class boost::serialization::access;
7666 void serialize(S &s,
const unsigned ) {
7669 s & BOOST_SERIALIZATION_NVP(p_flags);
7670 s & BOOST_SERIALIZATION_NVP(p_pageMapIndex);
7671 s & BOOST_SERIALIZATION_NVP(p_pageMapNEntries);
7672 s & BOOST_SERIALIZATION_NVP(p_res1);
7673 s & BOOST_SERIALIZATION_NVP(p_mappedSize);
7674 s & BOOST_SERIALIZATION_NVP(p_baseAddr);
7687 uint32_t mapped_size;
7690 uint32_t pagemap_index;
7691 uint32_t pagemap_nentries;
7697 __attribute__((packed))
7711 SF_RESERVED = 0xffff0800,
7723 SF_TYPE_MASK = 0x00000300,
7724 SF_TYPE_NORMAL = 0x00000000,
7741 unsigned const& get_flags()
const;
7742 void set_flags(
unsigned const&);
7745 unsigned const& get_pageMapIndex()
const;
7746 void set_pageMapIndex(
unsigned const&);
7749 unsigned const& get_pageMapNEntries()
const;
7750 void set_pageMapNEntries(
unsigned const&);
7753 unsigned const& get_res1()
const;
7754 void set_res1(
unsigned const&);
7770 virtual void dump(FILE *f,
const char *prefix, ssize_t idx)
const;
7776 unsigned get_pagemap_index() const ROSE_DEPRECATED("use get pageMapIndex");
7777 void set_pagemap_index(
unsigned) ROSE_DEPRECATED("use set_pageMapIndex");
7778 unsigned get_pagemap_nentries() const ROSE_DEPRECATED("use get_pageMapNEntries");
7779 void set_pagemap_nentries(
unsigned) ROSE_DEPRECATED("use set_pageMapNEntries");
7780 Rose::BinaryAnalysis::Address get_mapped_size() const ROSE_DEPRECATED("use get_mappedSize");
7781 void set_mapped_size(
Rose::BinaryAnalysis::Address) ROSE_DEPRECATED("use set_mappedSize");
7782 Rose::BinaryAnalysis::Address get_base_addr() const ROSE_DEPRECATED("use get_baseAddr");
7783 void set_base_addr(
Rose::BinaryAnalysis::Address) ROSE_DEPRECATED("use set_baseAddr");
7810DECLARE_LEAF_CLASS(AsmLESectionTable);
7811IS_SERIALIZABLE(AsmLESectionTable);
7813#ifndef DOCUMENTATION
7814AsmLESectionTable.useSmallHeader(
true);
7817DECLARE_HEADERS(AsmLESectionTable);
7818#if defined(SgAsmLESectionTable_HEADERS) || defined(DOCUMENTATION)
7819#include <Rose/BinaryAnalysis/Address.h>
7826 DECLARE_OTHERS(AsmLESectionTable);
7827#if defined(SgAsmLESectionTable_OTHERS) || defined(DOCUMENTATION)
7830#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
7832 friend class boost::serialization::access;
7835 void serialize(S &s,
const unsigned ) {
7843 virtual void unparse(std::ostream&)
const override;
7844 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
7871DECLARE_LEAF_CLASS(AsmLESection);
7872IS_SERIALIZABLE(AsmLESection);
7874#ifndef DOCUMENTATION
7875AsmLESection.useSmallHeader(
true);
7878DECLARE_HEADERS(AsmLESection);
7879#if defined(SgAsmLESection_HEADERS) || defined(DOCUMENTATION)
7880#ifdef ROSE_SgAsmLESection_IMPL
7881#include <SgAsmLESectionTableEntry.h>
7889#ifndef DOCUMENTATION
7890 AsmLESection.setDataPrototype(
7891 "SgAsmLESectionTableEntry*",
"sectionTableEntry",
"= nullptr",
7892 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
7895 DECLARE_OTHERS(AsmLESection);
7896#if defined(SgAsmLESection_OTHERS) || defined(DOCUMENTATION)
7899#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
7901 friend class boost::serialization::access;
7904 void serialize(S &s,
const unsigned ) {
7907 s & BOOST_SERIALIZATION_NVP(p_sectionTableEntry);
7917 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
7951DECLARE_LEAF_CLASS(AsmLERelocTable);
7952IS_SERIALIZABLE(AsmLERelocTable);
7954#ifndef DOCUMENTATION
7955AsmLERelocTable.useSmallHeader(
true);
7958DECLARE_HEADERS(AsmLERelocTable);
7959#if defined(SgAsmLERelocTable_HEADERS) || defined(DOCUMENTATION)
7960#include <Rose/BinaryAnalysis/Address.h>
7967#ifndef DOCUMENTATION
7968 AsmLERelocTable.setDataPrototype(
7969 "SgAsmLERelocEntryPtrList",
"entries",
"",
7970 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
7973 DECLARE_OTHERS(AsmLERelocTable);
7974#if defined(SgAsmLERelocTable_OTHERS) || defined(DOCUMENTATION)
7977#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
7979 friend class boost::serialization::access;
7982 void serialize(S &s,
const unsigned ) {
7985 s & BOOST_SERIALIZATION_NVP(p_entries);
7991 SgAsmLERelocEntryPtrList
const& get_entries()
const;
7992 SgAsmLERelocEntryPtrList& get_entries();
7993 void set_entries(SgAsmLERelocEntryPtrList
const&);
7996 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
8023DECLARE_LEAF_CLASS(AsmLEPageTableEntry);
8024IS_SERIALIZABLE(AsmLEPageTableEntry);
8026#ifndef DOCUMENTATION
8027AsmLEPageTableEntry.useSmallHeader(
true);
8030DECLARE_HEADERS(AsmLEPageTableEntry);
8031#if defined(SgAsmLEPageTableEntry_HEADERS) || defined(DOCUMENTATION)
8032#include <Rose/BinaryAnalysis/ByteOrder.h>
8039#ifndef DOCUMENTATION
8040 AsmLEPageTableEntry.setDataPrototype(
8041 "unsigned",
"pageno",
"= 0",
8042 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8045#ifndef DOCUMENTATION
8046 AsmLEPageTableEntry.setDataPrototype(
8047 "unsigned",
"flags",
"= 0",
8048 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8051 DECLARE_OTHERS(AsmLEPageTableEntry);
8052#if defined(SgAsmLEPageTableEntry_OTHERS) || defined(DOCUMENTATION)
8055#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
8057 friend class boost::serialization::access;
8060 void serialize(S &s,
const unsigned ) {
8063 s & BOOST_SERIALIZATION_NVP(p_pageno);
8064 s & BOOST_SERIALIZATION_NVP(p_flags);
8084 unsigned char pageno_lo;
8085 unsigned char flags;
8090 __attribute__((packed))
8103 unsigned const& get_pageno()
const;
8104 void set_pageno(
unsigned const&);
8107 unsigned const& get_flags()
const;
8108 void set_flags(
unsigned const&);
8115 void dump(FILE*,
const char *prefix, ssize_t idx)
const;
8143DECLARE_LEAF_CLASS(AsmLEPageTable);
8144IS_SERIALIZABLE(AsmLEPageTable);
8146#ifndef DOCUMENTATION
8147AsmLEPageTable.useSmallHeader(
true);
8150DECLARE_HEADERS(AsmLEPageTable);
8151#if defined(SgAsmLEPageTable_HEADERS) || defined(DOCUMENTATION)
8152#include <Rose/BinaryAnalysis/Address.h>
8159#ifndef DOCUMENTATION
8160 AsmLEPageTable.setDataPrototype(
8161 "SgAsmLEPageTableEntryPtrList",
"entries",
"",
8162 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
8165 DECLARE_OTHERS(AsmLEPageTable);
8166#if defined(SgAsmLEPageTable_OTHERS) || defined(DOCUMENTATION)
8169#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
8171 friend class boost::serialization::access;
8174 void serialize(S &s,
const unsigned ) {
8177 s & BOOST_SERIALIZATION_NVP(p_entries);
8183 SgAsmLEPageTableEntryPtrList
const& get_entries()
const;
8184 SgAsmLEPageTableEntryPtrList& get_entries();
8185 void set_entries(SgAsmLEPageTableEntryPtrList
const&);
8188 virtual void unparse(std::ostream&)
const override;
8189 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
8217DECLARE_LEAF_CLASS(AsmLENameTable);
8218IS_SERIALIZABLE(AsmLENameTable);
8220#ifndef DOCUMENTATION
8221AsmLENameTable.useSmallHeader(
true);
8224DECLARE_HEADERS(AsmLENameTable);
8225#if defined(SgAsmLENameTable_HEADERS) || defined(DOCUMENTATION)
8226#include <Rose/BinaryAnalysis/Address.h>
8233#ifndef DOCUMENTATION
8234 AsmLENameTable.setDataPrototype(
8235 "SgStringList",
"names",
"",
8236 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8239#ifndef DOCUMENTATION
8240 AsmLENameTable.setDataPrototype(
8241 "SgUnsignedList",
"ordinals",
"",
8242 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8245 DECLARE_OTHERS(AsmLENameTable);
8246#if defined(SgAsmLENameTable_OTHERS) || defined(DOCUMENTATION)
8249#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
8251 friend class boost::serialization::access;
8254 void serialize(S &s,
const unsigned ) {
8257 s & BOOST_SERIALIZATION_NVP(p_names);
8258 s & BOOST_SERIALIZATION_NVP(p_ordinals);
8264 SgStringList
const& get_names()
const;
8265 void set_names(SgStringList
const&);
8268 SgUnsignedList
const& get_ordinals()
const;
8269 void set_ordinals(SgUnsignedList
const&);
8276 virtual void unparse(std::ostream&)
const override;
8277 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
8304DECLARE_LEAF_CLASS(AsmLEFileHeader);
8305IS_SERIALIZABLE(AsmLEFileHeader);
8307#ifndef DOCUMENTATION
8308AsmLEFileHeader.useSmallHeader(
true);
8311DECLARE_HEADERS(AsmLEFileHeader);
8312#if defined(SgAsmLEFileHeader_HEADERS) || defined(DOCUMENTATION)
8313#include <Rose/BinaryAnalysis/Address.h>
8314#include <Rose/BinaryAnalysis/ByteOrder.h>
8316#ifdef ROSE_SgAsmLEFileHeader_IMPL
8317#include <SgAsmDOSExtendedHeader.h>
8318#include <SgAsmLEEntryTable.h>
8319#include <SgAsmLENameTable.h>
8320#include <SgAsmLEPageTable.h>
8321#include <SgAsmLERelocTable.h>
8322#include <SgAsmLESectionTable.h>
8330#ifndef DOCUMENTATION
8331 AsmLEFileHeader.setDataPrototype(
8332 "unsigned",
"e_byte_order",
"= 0",
8333 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8336#ifndef DOCUMENTATION
8337 AsmLEFileHeader.setDataPrototype(
8338 "unsigned",
"e_word_order",
"= 0",
8339 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8342#ifndef DOCUMENTATION
8343 AsmLEFileHeader.setDataPrototype(
8344 "unsigned",
"e_format_level",
"= 0",
8345 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8348#ifndef DOCUMENTATION
8349 AsmLEFileHeader.setDataPrototype(
8350 "unsigned",
"e_cpu_type",
"= 0",
8351 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8354#ifndef DOCUMENTATION
8355 AsmLEFileHeader.setDataPrototype(
8356 "unsigned",
"e_os_type",
"= 0",
8357 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8360#ifndef DOCUMENTATION
8361 AsmLEFileHeader.setDataPrototype(
8362 "unsigned",
"e_module_version",
"= 0",
8363 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8366#ifndef DOCUMENTATION
8367 AsmLEFileHeader.setDataPrototype(
8368 "unsigned",
"e_flags",
"= 0",
8369 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8372#ifndef DOCUMENTATION
8373 AsmLEFileHeader.setDataPrototype(
8374 "unsigned",
"e_eip_section",
"= 0",
8375 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8378#ifndef DOCUMENTATION
8379 AsmLEFileHeader.setDataPrototype(
8380 "unsigned",
"e_esp_section",
"= 0",
8381 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8384#ifndef DOCUMENTATION
8385 AsmLEFileHeader.setDataPrototype(
8386 "unsigned",
"e_last_page_size",
"= 0",
8387 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8390#ifndef DOCUMENTATION
8391 AsmLEFileHeader.setDataPrototype(
8392 "unsigned",
"e_page_offset_shift",
"= 0",
8393 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8396#ifndef DOCUMENTATION
8397 AsmLEFileHeader.setDataPrototype(
8398 "unsigned",
"e_fixup_sect_cksum",
"= 0",
8399 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8402#ifndef DOCUMENTATION
8403 AsmLEFileHeader.setDataPrototype(
8404 "unsigned",
"e_loader_sect_cksum",
"= 0",
8405 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8408#ifndef DOCUMENTATION
8409 AsmLEFileHeader.setDataPrototype(
8410 "unsigned",
"e_secttab_nentries",
"= 0",
8411 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8414#ifndef DOCUMENTATION
8415 AsmLEFileHeader.setDataPrototype(
8416 "unsigned",
"e_rsrctab_nentries",
"= 0",
8417 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8420#ifndef DOCUMENTATION
8421 AsmLEFileHeader.setDataPrototype(
8422 "unsigned",
"e_fmtdirtab_nentries",
"= 0",
8423 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8426#ifndef DOCUMENTATION
8427 AsmLEFileHeader.setDataPrototype(
8428 "unsigned",
"e_import_modtab_nentries",
"= 0",
8429 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8432#ifndef DOCUMENTATION
8433 AsmLEFileHeader.setDataPrototype(
8434 "unsigned",
"e_preload_npages",
"= 0",
8435 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8438#ifndef DOCUMENTATION
8439 AsmLEFileHeader.setDataPrototype(
8440 "unsigned",
"e_nonresnametab_size",
"= 0",
8441 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8444#ifndef DOCUMENTATION
8445 AsmLEFileHeader.setDataPrototype(
8446 "unsigned",
"e_nonresnametab_cksum",
"= 0",
8447 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8450#ifndef DOCUMENTATION
8451 AsmLEFileHeader.setDataPrototype(
8452 "unsigned",
"e_auto_ds_section",
"= 0",
8453 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8456#ifndef DOCUMENTATION
8457 AsmLEFileHeader.setDataPrototype(
8458 "unsigned",
"e_debug_info_size",
"= 0",
8459 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8462#ifndef DOCUMENTATION
8463 AsmLEFileHeader.setDataPrototype(
8464 "unsigned",
"e_num_instance_preload",
"= 0",
8465 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8468#ifndef DOCUMENTATION
8469 AsmLEFileHeader.setDataPrototype(
8470 "unsigned",
"e_num_instance_demand",
"= 0",
8471 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8474#ifndef DOCUMENTATION
8475 AsmLEFileHeader.setDataPrototype(
8476 "unsigned",
"e_heap_size",
"= 0",
8477 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8480#ifndef DOCUMENTATION
8481 AsmLEFileHeader.setDataPrototype(
8482 "Rose::BinaryAnalysis::Address",
"e_npages",
"= 0",
8483 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8486#ifndef DOCUMENTATION
8487 AsmLEFileHeader.setDataPrototype(
8488 "Rose::BinaryAnalysis::Address",
"e_eip",
"= 0",
8489 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8492#ifndef DOCUMENTATION
8493 AsmLEFileHeader.setDataPrototype(
8494 "Rose::BinaryAnalysis::Address",
"e_esp",
"= 0",
8495 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8498#ifndef DOCUMENTATION
8499 AsmLEFileHeader.setDataPrototype(
8500 "Rose::BinaryAnalysis::Address",
"e_page_size",
"= 0",
8501 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8504#ifndef DOCUMENTATION
8505 AsmLEFileHeader.setDataPrototype(
8506 "Rose::BinaryAnalysis::Address",
"e_fixup_sect_size",
"= 0",
8507 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8510#ifndef DOCUMENTATION
8511 AsmLEFileHeader.setDataPrototype(
8512 "Rose::BinaryAnalysis::Address",
"e_loader_sect_size",
"= 0",
8513 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8516#ifndef DOCUMENTATION
8517 AsmLEFileHeader.setDataPrototype(
8518 "Rose::BinaryAnalysis::Address",
"e_secttab_rfo",
"= 0",
8519 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8522#ifndef DOCUMENTATION
8523 AsmLEFileHeader.setDataPrototype(
8524 "Rose::BinaryAnalysis::Address",
"e_pagetab_rfo",
"= 0",
8525 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8528#ifndef DOCUMENTATION
8529 AsmLEFileHeader.setDataPrototype(
8530 "Rose::BinaryAnalysis::Address",
"e_iterpages_offset",
"= 0",
8531 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8534#ifndef DOCUMENTATION
8535 AsmLEFileHeader.setDataPrototype(
8536 "Rose::BinaryAnalysis::Address",
"e_rsrctab_rfo",
"= 0",
8537 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8540#ifndef DOCUMENTATION
8541 AsmLEFileHeader.setDataPrototype(
8542 "Rose::BinaryAnalysis::Address",
"e_resnametab_rfo",
"= 0",
8543 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8546#ifndef DOCUMENTATION
8547 AsmLEFileHeader.setDataPrototype(
8548 "Rose::BinaryAnalysis::Address",
"e_entrytab_rfo",
"= 0",
8549 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8552#ifndef DOCUMENTATION
8553 AsmLEFileHeader.setDataPrototype(
8554 "Rose::BinaryAnalysis::Address",
"e_fmtdirtab_rfo",
"= 0",
8555 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8558#ifndef DOCUMENTATION
8559 AsmLEFileHeader.setDataPrototype(
8560 "Rose::BinaryAnalysis::Address",
"e_fixup_pagetab_rfo",
"= 0",
8561 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8564#ifndef DOCUMENTATION
8565 AsmLEFileHeader.setDataPrototype(
8566 "Rose::BinaryAnalysis::Address",
"e_fixup_rectab_rfo",
"= 0",
8567 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8570#ifndef DOCUMENTATION
8571 AsmLEFileHeader.setDataPrototype(
8572 "Rose::BinaryAnalysis::Address",
"e_import_modtab_rfo",
"= 0",
8573 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8576#ifndef DOCUMENTATION
8577 AsmLEFileHeader.setDataPrototype(
8578 "Rose::BinaryAnalysis::Address",
"e_import_proctab_rfo",
"= 0",
8579 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8582#ifndef DOCUMENTATION
8583 AsmLEFileHeader.setDataPrototype(
8584 "Rose::BinaryAnalysis::Address",
"e_ppcksumtab_rfo",
"= 0",
8585 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8588#ifndef DOCUMENTATION
8589 AsmLEFileHeader.setDataPrototype(
8590 "Rose::BinaryAnalysis::Address",
"e_data_pages_offset",
"= 0",
8591 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8594#ifndef DOCUMENTATION
8595 AsmLEFileHeader.setDataPrototype(
8596 "Rose::BinaryAnalysis::Address",
"e_nonresnametab_offset",
"= 0",
8597 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8600#ifndef DOCUMENTATION
8601 AsmLEFileHeader.setDataPrototype(
8602 "Rose::BinaryAnalysis::Address",
"e_debug_info_rfo",
"= 0",
8603 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8606#ifndef DOCUMENTATION
8607 AsmLEFileHeader.setDataPrototype(
8608 "SgAsmDOSExtendedHeader*",
"dos2Header",
"= nullptr",
8609 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
8612#ifndef DOCUMENTATION
8613 AsmLEFileHeader.setDataPrototype(
8614 "SgAsmLESectionTable*",
"sectionTable",
"= nullptr",
8615 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
8618#ifndef DOCUMENTATION
8619 AsmLEFileHeader.setDataPrototype(
8620 "SgAsmLEPageTable*",
"pageTable",
"= nullptr",
8621 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
8624#ifndef DOCUMENTATION
8625 AsmLEFileHeader.setDataPrototype(
8626 "SgAsmLENameTable*",
"residentNameTable",
"= nullptr",
8627 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
8630#ifndef DOCUMENTATION
8631 AsmLEFileHeader.setDataPrototype(
8632 "SgAsmLENameTable*",
"nonresidentNameTable",
"= nullptr",
8633 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
8636#ifndef DOCUMENTATION
8637 AsmLEFileHeader.setDataPrototype(
8638 "SgAsmLEEntryTable*",
"entryTable",
"= nullptr",
8639 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
8642#ifndef DOCUMENTATION
8643 AsmLEFileHeader.setDataPrototype(
8644 "SgAsmLERelocTable*",
"relocationTable",
"= nullptr",
8645 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
8648 DECLARE_OTHERS(AsmLEFileHeader);
8649#if defined(SgAsmLEFileHeader_OTHERS) || defined(DOCUMENTATION)
8652#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
8654 friend class boost::serialization::access;
8657 void serialize(S &s,
const unsigned ) {
8660 s & BOOST_SERIALIZATION_NVP(p_e_byte_order);
8661 s & BOOST_SERIALIZATION_NVP(p_e_word_order);
8662 s & BOOST_SERIALIZATION_NVP(p_e_format_level);
8663 s & BOOST_SERIALIZATION_NVP(p_e_cpu_type);
8664 s & BOOST_SERIALIZATION_NVP(p_e_os_type);
8665 s & BOOST_SERIALIZATION_NVP(p_e_module_version);
8666 s & BOOST_SERIALIZATION_NVP(p_e_flags);
8667 s & BOOST_SERIALIZATION_NVP(p_e_eip_section);
8668 s & BOOST_SERIALIZATION_NVP(p_e_esp_section);
8669 s & BOOST_SERIALIZATION_NVP(p_e_last_page_size);
8670 s & BOOST_SERIALIZATION_NVP(p_e_page_offset_shift);
8671 s & BOOST_SERIALIZATION_NVP(p_e_fixup_sect_cksum);
8672 s & BOOST_SERIALIZATION_NVP(p_e_loader_sect_cksum);
8673 s & BOOST_SERIALIZATION_NVP(p_e_secttab_nentries);
8674 s & BOOST_SERIALIZATION_NVP(p_e_rsrctab_nentries);
8675 s & BOOST_SERIALIZATION_NVP(p_e_fmtdirtab_nentries);
8676 s & BOOST_SERIALIZATION_NVP(p_e_import_modtab_nentries);
8677 s & BOOST_SERIALIZATION_NVP(p_e_preload_npages);
8678 s & BOOST_SERIALIZATION_NVP(p_e_nonresnametab_size);
8679 s & BOOST_SERIALIZATION_NVP(p_e_nonresnametab_cksum);
8680 s & BOOST_SERIALIZATION_NVP(p_e_auto_ds_section);
8681 s & BOOST_SERIALIZATION_NVP(p_e_debug_info_size);
8682 s & BOOST_SERIALIZATION_NVP(p_e_num_instance_preload);
8683 s & BOOST_SERIALIZATION_NVP(p_e_num_instance_demand);
8684 s & BOOST_SERIALIZATION_NVP(p_e_heap_size);
8685 s & BOOST_SERIALIZATION_NVP(p_e_npages);
8686 s & BOOST_SERIALIZATION_NVP(p_e_eip);
8687 s & BOOST_SERIALIZATION_NVP(p_e_esp);
8688 s & BOOST_SERIALIZATION_NVP(p_e_page_size);
8689 s & BOOST_SERIALIZATION_NVP(p_e_fixup_sect_size);
8690 s & BOOST_SERIALIZATION_NVP(p_e_loader_sect_size);
8691 s & BOOST_SERIALIZATION_NVP(p_e_secttab_rfo);
8692 s & BOOST_SERIALIZATION_NVP(p_e_pagetab_rfo);
8693 s & BOOST_SERIALIZATION_NVP(p_e_iterpages_offset);
8694 s & BOOST_SERIALIZATION_NVP(p_e_rsrctab_rfo);
8695 s & BOOST_SERIALIZATION_NVP(p_e_resnametab_rfo);
8696 s & BOOST_SERIALIZATION_NVP(p_e_entrytab_rfo);
8697 s & BOOST_SERIALIZATION_NVP(p_e_fmtdirtab_rfo);
8698 s & BOOST_SERIALIZATION_NVP(p_e_fixup_pagetab_rfo);
8699 s & BOOST_SERIALIZATION_NVP(p_e_fixup_rectab_rfo);
8700 s & BOOST_SERIALIZATION_NVP(p_e_import_modtab_rfo);
8701 s & BOOST_SERIALIZATION_NVP(p_e_import_proctab_rfo);
8702 s & BOOST_SERIALIZATION_NVP(p_e_ppcksumtab_rfo);
8703 s & BOOST_SERIALIZATION_NVP(p_e_data_pages_offset);
8704 s & BOOST_SERIALIZATION_NVP(p_e_nonresnametab_offset);
8705 s & BOOST_SERIALIZATION_NVP(p_e_debug_info_rfo);
8706 s & BOOST_SERIALIZATION_NVP(p_dos2Header);
8707 s & BOOST_SERIALIZATION_NVP(p_sectionTable);
8708 s & BOOST_SERIALIZATION_NVP(p_pageTable);
8709 s & BOOST_SERIALIZATION_NVP(p_residentNameTable);
8710 s & BOOST_SERIALIZATION_NVP(p_nonresidentNameTable);
8711 s & BOOST_SERIALIZATION_NVP(p_entryTable);
8712 s & BOOST_SERIALIZATION_NVP(p_relocationTable);
8725 unsigned char e_magic[2];
8726 unsigned char e_byte_order;
8727 unsigned char e_word_order;
8728 uint32_t e_format_level;
8729 uint16_t e_cpu_type;
8731 uint32_t e_module_version;
8734 uint32_t e_eip_section;
8736 uint32_t e_esp_section;
8738 uint32_t e_page_size;
8739 uint32_t e_lps_or_shift;
8740 uint32_t e_fixup_sect_size;
8741 uint32_t e_fixup_sect_cksum;
8742 uint32_t e_loader_sect_size;
8743 uint32_t e_loader_sect_cksum;
8744 uint32_t e_secttab_rfo;
8745 uint32_t e_secttab_nentries;
8746 uint32_t e_pagetab_rfo;
8747 uint32_t e_iterpages_offset;
8748 uint32_t e_rsrctab_rfo;
8749 uint32_t e_rsrctab_nentries;
8750 uint32_t e_resnametab_rfo;
8751 uint32_t e_entrytab_rfo;
8752 uint32_t e_fmtdirtab_rfo;
8753 uint32_t e_fmtdirtab_nentries;
8754 uint32_t e_fixup_pagetab_rfo;
8755 uint32_t e_fixup_rectab_rfo;
8756 uint32_t e_import_modtab_rfo;
8757 uint32_t e_import_modtab_nentries;
8758 uint32_t e_import_proctab_rfo;
8759 uint32_t e_ppcksumtab_rfo;
8760 uint32_t e_data_pages_offset;
8761 uint32_t e_preload_npages;
8762 uint32_t e_nonresnametab_offset;
8763 uint32_t e_nonresnametab_size;
8764 uint32_t e_nonresnametab_cksum;
8765 uint32_t e_auto_ds_section;
8766 uint32_t e_debug_info_rfo;
8767 uint32_t e_debug_info_size;
8768 uint32_t e_num_instance_preload;
8769 uint32_t e_num_instance_demand;
8770 uint32_t e_heap_size;
8775 __attribute__((packed))
8783 enum LEFileHeaderFlags {
8784 HF_RESERVED = 0xbffc5ccb,
8785 HF_PROC_LIB_INIT = 0x00000004,
8786 HF_IFIXUPS_APPLIED = 0x00000010,
8787 HF_EFIXUPS_APPLIED = 0x00000020,
8788 HF_PM_WINDOW_NO = 0x00000100,
8789 HF_PM_WINDOW_OK = 0x00000200,
8790 HF_PM_WINDOW_USE = 0x00000300,
8791 HF_NOT_LOADABLE = 0x00002000,
8792 HF_PROC_LIB_TERM = 0x40000000,
8794 HF_MODTYPE_MASK = 0x00038000,
8795 HF_MODTYPE_PROG = 0x00000000,
8796 HF_MODTYPE_LIB = 0x00008000,
8797 HF_MODTYPE_PLIB = 0x00018000,
8798 HF_MODTYPE_PDEV = 0x00020000,
8799 HF_MODTYPE_VDEV = 0x00028000
8807 unsigned const& get_e_byte_order()
const;
8808 void set_e_byte_order(
unsigned const&);
8811 unsigned const& get_e_word_order()
const;
8812 void set_e_word_order(
unsigned const&);
8815 unsigned const& get_e_format_level()
const;
8816 void set_e_format_level(
unsigned const&);
8819 unsigned const& get_e_cpu_type()
const;
8820 void set_e_cpu_type(
unsigned const&);
8823 unsigned const& get_e_os_type()
const;
8824 void set_e_os_type(
unsigned const&);
8827 unsigned const& get_e_module_version()
const;
8828 void set_e_module_version(
unsigned const&);
8831 unsigned const& get_e_flags()
const;
8832 void set_e_flags(
unsigned const&);
8835 unsigned const& get_e_eip_section()
const;
8836 void set_e_eip_section(
unsigned const&);
8839 unsigned const& get_e_esp_section()
const;
8840 void set_e_esp_section(
unsigned const&);
8843 unsigned const& get_e_last_page_size()
const;
8844 void set_e_last_page_size(
unsigned const&);
8847 unsigned const& get_e_page_offset_shift()
const;
8848 void set_e_page_offset_shift(
unsigned const&);
8851 unsigned const& get_e_fixup_sect_cksum()
const;
8852 void set_e_fixup_sect_cksum(
unsigned const&);
8855 unsigned const& get_e_loader_sect_cksum()
const;
8856 void set_e_loader_sect_cksum(
unsigned const&);
8859 unsigned const& get_e_secttab_nentries()
const;
8860 void set_e_secttab_nentries(
unsigned const&);
8863 unsigned const& get_e_rsrctab_nentries()
const;
8864 void set_e_rsrctab_nentries(
unsigned const&);
8867 unsigned const& get_e_fmtdirtab_nentries()
const;
8868 void set_e_fmtdirtab_nentries(
unsigned const&);
8871 unsigned const& get_e_import_modtab_nentries()
const;
8872 void set_e_import_modtab_nentries(
unsigned const&);
8875 unsigned const& get_e_preload_npages()
const;
8876 void set_e_preload_npages(
unsigned const&);
8879 unsigned const& get_e_nonresnametab_size()
const;
8880 void set_e_nonresnametab_size(
unsigned const&);
8883 unsigned const& get_e_nonresnametab_cksum()
const;
8884 void set_e_nonresnametab_cksum(
unsigned const&);
8887 unsigned const& get_e_auto_ds_section()
const;
8888 void set_e_auto_ds_section(
unsigned const&);
8891 unsigned const& get_e_debug_info_size()
const;
8892 void set_e_debug_info_size(
unsigned const&);
8895 unsigned const& get_e_num_instance_preload()
const;
8896 void set_e_num_instance_preload(
unsigned const&);
8899 unsigned const& get_e_num_instance_demand()
const;
8900 void set_e_num_instance_demand(
unsigned const&);
8903 unsigned const& get_e_heap_size()
const;
8904 void set_e_heap_size(
unsigned const&);
9022 virtual void unparse(std::ostream&)
const override;
9023 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
9042 SgAsmLEPageTable* get_page_table() const ROSE_DEPRECATED("use get_pageTable");
9043 void set_page_table(
SgAsmLEPageTable*) ROSE_DEPRECATED("use set_pageTable");
9044 SgAsmLENameTable* get_resname_table() const ROSE_DEPRECATED("use get_residentNameTable");
9045 void set_resname_table(
SgAsmLENameTable*) ROSE_DEPRECATED("use set_residentNameTable");
9046 SgAsmLENameTable* get_nonresname_table() const ROSE_DEPRECATED("use get_nonresidentNameTable");
9047 void set_nonresname_table(
SgAsmLENameTable*) ROSE_DEPRECATED("use set_nonresidentNameTable");
9048 SgAsmLEEntryTable* get_entry_table() const ROSE_DEPRECATED("use get_entryTable");
9050 SgAsmLERelocTable* get_reloc_table() const ROSE_DEPRECATED("use get_relocationTable");
9051 void set_reloc_table(
SgAsmLERelocTable*) ROSE_DEPRECATED("use set_relocationTable");
9052 const
char *format_name() const override ROSE_DEPRECATED("use
formatName");
9080DECLARE_LEAF_CLASS(AsmLEEntryTable);
9081IS_SERIALIZABLE(AsmLEEntryTable);
9083#ifndef DOCUMENTATION
9084AsmLEEntryTable.useSmallHeader(
true);
9087DECLARE_HEADERS(AsmLEEntryTable);
9088#if defined(SgAsmLEEntryTable_HEADERS) || defined(DOCUMENTATION)
9089#include <Rose/BinaryAnalysis/Address.h>
9096#ifndef DOCUMENTATION
9097 AsmLEEntryTable.setDataPrototype(
9098 "SgSizeTList",
"bundle_sizes",
"",
9099 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9102#ifndef DOCUMENTATION
9103 AsmLEEntryTable.setDataPrototype(
9104 "SgAsmLEEntryPointPtrList",
"entries",
"",
9105 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
9108 DECLARE_OTHERS(AsmLEEntryTable);
9109#if defined(SgAsmLEEntryTable_OTHERS) || defined(DOCUMENTATION)
9112#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
9114 friend class boost::serialization::access;
9117 void serialize(S &s,
const unsigned ) {
9120 s & BOOST_SERIALIZATION_NVP(p_bundle_sizes);
9121 s & BOOST_SERIALIZATION_NVP(p_entries);
9127 SgSizeTList
const& get_bundle_sizes()
const;
9128 void set_bundle_sizes(SgSizeTList
const&);
9131 SgAsmLEEntryPointPtrList
const& get_entries()
const;
9132 SgAsmLEEntryPointPtrList& get_entries();
9133 void set_entries(SgAsmLEEntryPointPtrList
const&);
9136 virtual void unparse(std::ostream&)
const override;
9137 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
9164DECLARE_LEAF_CLASS(AsmLEEntryPoint);
9165IS_SERIALIZABLE(AsmLEEntryPoint);
9167#ifndef DOCUMENTATION
9168AsmLEEntryPoint.useSmallHeader(
true);
9171DECLARE_HEADERS(AsmLEEntryPoint);
9172#if defined(SgAsmLEEntryPoint_HEADERS) || defined(DOCUMENTATION)
9173#include <Rose/BinaryAnalysis/Address.h>
9174#include <Rose/BinaryAnalysis/ByteOrder.h>
9175#include <sageContainer.h>
9182#ifndef DOCUMENTATION
9183 AsmLEEntryPoint.setDataPrototype(
9184 "SgAsmLEEntryPointPtrList",
"entries",
"",
9185 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
9188#ifndef DOCUMENTATION
9189 AsmLEEntryPoint.setDataPrototype(
9190 "unsigned",
"flags",
"= 0",
9191 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9194#ifndef DOCUMENTATION
9195 AsmLEEntryPoint.setDataPrototype(
9196 "unsigned",
"objnum",
"= 0",
9197 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9200#ifndef DOCUMENTATION
9201 AsmLEEntryPoint.setDataPrototype(
9202 "unsigned",
"entry_type",
"= 0",
9203 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9206#ifndef DOCUMENTATION
9207 AsmLEEntryPoint.setDataPrototype(
9208 "unsigned",
"res1",
"= 0",
9209 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9212#ifndef DOCUMENTATION
9213 AsmLEEntryPoint.setDataPrototype(
9214 "Rose::BinaryAnalysis::Address",
"entry_offset",
"= 0",
9215 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9218 DECLARE_OTHERS(AsmLEEntryPoint);
9219#if defined(SgAsmLEEntryPoint_OTHERS) || defined(DOCUMENTATION)
9222#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
9224 friend class boost::serialization::access;
9227 void serialize(S &s,
const unsigned ) {
9230 s & BOOST_SERIALIZATION_NVP(p_entries);
9231 s & BOOST_SERIALIZATION_NVP(p_flags);
9232 s & BOOST_SERIALIZATION_NVP(p_objnum);
9233 s & BOOST_SERIALIZATION_NVP(p_entry_type);
9234 s & BOOST_SERIALIZATION_NVP(p_res1);
9235 s & BOOST_SERIALIZATION_NVP(p_entry_offset);
9252 uint32_t entry_offset;
9258 __attribute__((packed))
9271 SgAsmLEEntryPointPtrList
const& get_entries()
const;
9272 SgAsmLEEntryPointPtrList& get_entries();
9273 void set_entries(SgAsmLEEntryPointPtrList
const&);
9276 unsigned const& get_flags()
const;
9277 void set_flags(
unsigned const&);
9280 unsigned const& get_objnum()
const;
9281 void set_objnum(
unsigned const&);
9284 unsigned const& get_entry_type()
const;
9285 void set_entry_type(
unsigned const&);
9288 unsigned const& get_res1()
const;
9289 void set_res1(
unsigned const&);
9302 void dump(FILE*,
const char *prefix, ssize_t idx)
const;
9329DECLARE_LEAF_CLASS(AsmJvmStackMapVerificationType);
9330IS_SERIALIZABLE(AsmJvmStackMapVerificationType);
9332#ifndef DOCUMENTATION
9333AsmJvmStackMapVerificationType.useSmallHeader(
true);
9343#ifndef DOCUMENTATION
9344 AsmJvmStackMapVerificationType.setDataPrototype(
9345 "uint8_t",
"tag",
"= 9",
9346 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9349#ifndef DOCUMENTATION
9350 AsmJvmStackMapVerificationType.setDataPrototype(
9351 "uint16_t",
"cpool_index",
"= 0",
9352 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9355#ifndef DOCUMENTATION
9356 AsmJvmStackMapVerificationType.setDataPrototype(
9357 "uint16_t",
"offset",
"= 0",
9358 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9361 DECLARE_OTHERS(AsmJvmStackMapVerificationType);
9362#if defined(SgAsmJvmStackMapVerificationType_OTHERS) || defined(DOCUMENTATION)
9365#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
9367 friend class boost::serialization::access;
9370 void serialize(S &s,
const unsigned ) {
9373 s & BOOST_SERIALIZATION_NVP(p_tag);
9374 s & BOOST_SERIALIZATION_NVP(p_cpool_index);
9375 s & BOOST_SERIALIZATION_NVP(p_offset);
9384 enum verification_type_tag {
9391 ITEM_UninitializedThis = 6,
9393 ITEM_Uninitialized = 8
9403 union verification_type_info {
9405 Integer_variable_info;
9406 Float_variable_info;
9408 Double_variable_info;
9410 UninitializedThis_variable_info;
9411 Object_variable_info;
9412 Uninitialized_variable_info;
9416 struct Top_variable_info {
9419 struct Integer_variable_info {
9422 struct Float_variable_info {
9425 struct Long_variable_info {
9428 struct Double_variable_info {
9431 struct Null_variable_info {
9434 struct UnitializedThis_variable_info {
9437 struct Object_variable_info {
9439 uint16_t cpool_index;
9441 struct Unitialized_variable_info {
9493 virtual void unparse(std::ostream&)
const override;
9496 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
9523DECLARE_LEAF_CLASS(AsmJvmStackMapTable);
9524IS_SERIALIZABLE(AsmJvmStackMapTable);
9526#ifndef DOCUMENTATION
9527AsmJvmStackMapTable.useSmallHeader(
true);
9530DECLARE_HEADERS(AsmJvmStackMapTable);
9531#if defined(SgAsmJvmStackMapTable_HEADERS) || defined(DOCUMENTATION)
9532#include <sageContainer.h>
9543#ifndef DOCUMENTATION
9544 AsmJvmStackMapTable.setDataPrototype(
9545 "SgAsmJvmStackMapFramePtrList",
"entries",
"",
9546 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9549 DECLARE_OTHERS(AsmJvmStackMapTable);
9550#if defined(SgAsmJvmStackMapTable_OTHERS) || defined(DOCUMENTATION)
9553#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
9555 friend class boost::serialization::access;
9558 void serialize(S &s,
const unsigned ) {
9561 s & BOOST_SERIALIZATION_NVP(p_entries);
9590 virtual void unparse(std::ostream&)
const override;
9593 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
9620DECLARE_LEAF_CLASS(AsmJvmStackMapFrame);
9621IS_SERIALIZABLE(AsmJvmStackMapFrame);
9623#ifndef DOCUMENTATION
9624AsmJvmStackMapFrame.useSmallHeader(
true);
9627DECLARE_HEADERS(AsmJvmStackMapFrame);
9628#if defined(SgAsmJvmStackMapFrame_HEADERS) || defined(DOCUMENTATION)
9629#include <sageContainer.h>
9639#ifndef DOCUMENTATION
9640 AsmJvmStackMapFrame.setDataPrototype(
9641 "SgAsmJvmStackMapVerificationTypePtrList",
"stack",
"",
9642 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9645#ifndef DOCUMENTATION
9646 AsmJvmStackMapFrame.setDataPrototype(
9647 "SgAsmJvmStackMapVerificationTypePtrList",
"locals",
"",
9648 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9651#ifndef DOCUMENTATION
9652 AsmJvmStackMapFrame.setDataPrototype(
9653 "uint8_t",
"frame_type",
"= 0",
9654 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9657#ifndef DOCUMENTATION
9658 AsmJvmStackMapFrame.setDataPrototype(
9659 "uint16_t",
"offset_delta",
"= 0",
9660 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9663 DECLARE_OTHERS(AsmJvmStackMapFrame);
9664#if defined(SgAsmJvmStackMapFrame_OTHERS) || defined(DOCUMENTATION)
9667#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
9669 friend class boost::serialization::access;
9672 void serialize(S &s,
const unsigned ) {
9675 s & BOOST_SERIALIZATION_NVP(p_stack);
9676 s & BOOST_SERIALIZATION_NVP(p_locals);
9677 s & BOOST_SERIALIZATION_NVP(p_frame_type);
9678 s & BOOST_SERIALIZATION_NVP(p_offset_delta);
9688 SgAsmJvmStackMapVerificationTypePtrList
const&
get_stack()
const;
9690 void set_stack(SgAsmJvmStackMapVerificationTypePtrList
const&);
9697 SgAsmJvmStackMapVerificationTypePtrList
const&
get_locals()
const;
9711 same_locals_1_stack_item_frame_extended;
9723 verification_type_info stack;
9727 uint16_t offset_delta;
9728 verification_type_info stack;
9732 uint16_t offset_delta;
9736 uint16_t offset_delta;
9740 uint16_t offset_delta;
9741 verification_type_info stack;
9745 uint16_t offset_delta;
9746 uint16_t number_of_locals;
9747 verification_type_info stack[number_of_locals];
9748 uint16_t number_of_stack_items;
9749 verification_type_info stack[number_of_stack_items];
9789 virtual void unparse(std::ostream&)
const override;
9792 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
9819DECLARE_LEAF_CLASS(AsmJvmRuntimeVisibleAnnotations);
9820IS_SERIALIZABLE(AsmJvmRuntimeVisibleAnnotations);
9822#ifndef DOCUMENTATION
9823AsmJvmRuntimeVisibleAnnotations.useSmallHeader(
true);
9826DECLARE_HEADERS(AsmJvmRuntimeVisibleAnnotations);
9827#if defined(SgAsmJvmRuntimeVisibleAnnotations_HEADERS) || defined(DOCUMENTATION)
9828#include <sageContainer.h>
9841#ifndef DOCUMENTATION
9842 AsmJvmRuntimeVisibleAnnotations.setDataPrototype(
9843 "std::vector<SgAsmJvmRuntimeAnnotation*>",
"annotations",
"",
9844 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
9847 DECLARE_OTHERS(AsmJvmRuntimeVisibleAnnotations);
9848#if defined(SgAsmJvmRuntimeVisibleAnnotations_OTHERS) || defined(DOCUMENTATION)
9851#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
9853 friend class boost::serialization::access;
9856 void serialize(S &s,
const unsigned ) {
9859 s & BOOST_SERIALIZATION_NVP(p_annotations);
9883 virtual void unparse(std::ostream&)
const override;
9886 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
9913DECLARE_LEAF_CLASS(AsmJvmRuntimeVisibilityParamAnnotations);
9914IS_SERIALIZABLE(AsmJvmRuntimeVisibilityParamAnnotations);
9916#ifndef DOCUMENTATION
9917AsmJvmRuntimeVisibilityParamAnnotations.useSmallHeader(
true);
9920DECLARE_HEADERS(AsmJvmRuntimeVisibilityParamAnnotations);
9921#if defined(SgAsmJvmRuntimeVisibilityParamAnnotations_HEADERS) || defined(DOCUMENTATION)
9922#include <sageContainer.h>
9941#ifndef DOCUMENTATION
9942 AsmJvmRuntimeVisibilityParamAnnotations.setDataPrototype(
9943 "std::vector<SgAsmJvmRuntimeParameterAnnotation*>",
"parameter_annotations",
"",
9944 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
9947#ifndef DOCUMENTATION
9948 AsmJvmRuntimeVisibilityParamAnnotations.setDataPrototype(
9949 "bool",
"isVisible",
"= true",
9950 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
9953 DECLARE_OTHERS(AsmJvmRuntimeVisibilityParamAnnotations);
9954#if defined(SgAsmJvmRuntimeVisibilityParamAnnotations_OTHERS) || defined(DOCUMENTATION)
9957#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
9959 friend class boost::serialization::access;
9962 void serialize(S &s,
const unsigned ) {
9965 s & BOOST_SERIALIZATION_NVP(p_parameter_annotations);
9966 s & BOOST_SERIALIZATION_NVP(p_isVisible);
10006 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
10024#ifdef DOCUMENTATION
10033DECLARE_LEAF_CLASS(AsmJvmRuntimeParameterAnnotation);
10034IS_SERIALIZABLE(AsmJvmRuntimeParameterAnnotation);
10036#ifndef DOCUMENTATION
10037AsmJvmRuntimeParameterAnnotation.useSmallHeader(
true);
10040#ifdef DOCUMENTATION
10048#ifndef DOCUMENTATION
10049 AsmJvmRuntimeParameterAnnotation.setDataPrototype(
10050 "std::vector<SgAsmJvmRuntimeAnnotation*>",
"annotations",
"",
10051 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
10054 DECLARE_OTHERS(AsmJvmRuntimeParameterAnnotation);
10055#if defined(SgAsmJvmRuntimeParameterAnnotation_OTHERS) || defined(DOCUMENTATION)
10058#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
10060 friend class boost::serialization::access;
10063 void serialize(S &s,
const unsigned ) {
10065 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
10066 s & BOOST_SERIALIZATION_NVP(p_annotations);
10095 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
10113#ifdef DOCUMENTATION
10122DECLARE_LEAF_CLASS(AsmJvmRuntimeInvisibleAnnotations);
10123IS_SERIALIZABLE(AsmJvmRuntimeInvisibleAnnotations);
10125#ifndef DOCUMENTATION
10126AsmJvmRuntimeInvisibleAnnotations.useSmallHeader(
true);
10129DECLARE_HEADERS(AsmJvmRuntimeInvisibleAnnotations);
10130#if defined(SgAsmJvmRuntimeInvisibleAnnotations_HEADERS) || defined(DOCUMENTATION)
10131#include <sageContainer.h>
10134#ifdef DOCUMENTATION
10144#ifndef DOCUMENTATION
10145 AsmJvmRuntimeInvisibleAnnotations.setDataPrototype(
10146 "std::vector<SgAsmJvmRuntimeAnnotation*>",
"annotations",
"",
10147 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
10150 DECLARE_OTHERS(AsmJvmRuntimeInvisibleAnnotations);
10151#if defined(SgAsmJvmRuntimeInvisibleAnnotations_OTHERS) || defined(DOCUMENTATION)
10154#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
10156 friend class boost::serialization::access;
10159 void serialize(S &s,
const unsigned ) {
10162 s & BOOST_SERIALIZATION_NVP(p_annotations);
10189 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
10207#ifdef DOCUMENTATION
10216DECLARE_LEAF_CLASS(AsmJvmRuntimeAnnotationValue);
10217IS_SERIALIZABLE(AsmJvmRuntimeAnnotationValue);
10219#ifndef DOCUMENTATION
10220AsmJvmRuntimeAnnotationValue.useSmallHeader(
true);
10223DECLARE_HEADERS(AsmJvmRuntimeAnnotationValue);
10224#if defined(SgAsmJvmRuntimeAnnotationValue_HEADERS) || defined(DOCUMENTATION)
10231#ifdef DOCUMENTATION
10257#ifndef DOCUMENTATION
10258 AsmJvmRuntimeAnnotationValue.setDataPrototype(
10259 "uint8_t",
"tag",
"= 0",
10260 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10263#ifndef DOCUMENTATION
10264 AsmJvmRuntimeAnnotationValue.setDataPrototype(
10265 "uint16_t",
"const_value_index",
"= 0",
10266 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10269#ifndef DOCUMENTATION
10270 AsmJvmRuntimeAnnotationValue.setDataPrototype(
10271 "uint16_t",
"type_name_index",
"= 0",
10272 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10275#ifndef DOCUMENTATION
10276 AsmJvmRuntimeAnnotationValue.setDataPrototype(
10277 "uint16_t",
"const_name_index",
"= 0",
10278 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10281#ifndef DOCUMENTATION
10282 AsmJvmRuntimeAnnotationValue.setDataPrototype(
10283 "uint16_t",
"class_info_index",
"= 0",
10284 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10287#ifndef DOCUMENTATION
10288 AsmJvmRuntimeAnnotationValue.setDataPrototype(
10289 "bool",
"is_annotation_value",
"= false",
10290 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10293#ifndef DOCUMENTATION
10294 AsmJvmRuntimeAnnotationValue.setDataPrototype(
10295 "SgAsmJvmRuntimeAnnotation*",
"annotation_value",
"= nullptr",
10296 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10299#ifndef DOCUMENTATION
10300 AsmJvmRuntimeAnnotationValue.setDataPrototype(
10301 "std::vector<SgAsmJvmRuntimeAnnotationValue*>",
"values",
"",
10302 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
10305 DECLARE_OTHERS(AsmJvmRuntimeAnnotationValue);
10306#if defined(SgAsmJvmRuntimeAnnotationValue_OTHERS) || defined(DOCUMENTATION)
10309#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
10311 friend class boost::serialization::access;
10314 void serialize(S &s,
const unsigned ) {
10316 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
10317 s & BOOST_SERIALIZATION_NVP(p_tag);
10318 s & BOOST_SERIALIZATION_NVP(p_const_value_index);
10319 s & BOOST_SERIALIZATION_NVP(p_type_name_index);
10320 s & BOOST_SERIALIZATION_NVP(p_const_name_index);
10321 s & BOOST_SERIALIZATION_NVP(p_class_info_index);
10322 s & BOOST_SERIALIZATION_NVP(p_is_annotation_value);
10323 s & BOOST_SERIALIZATION_NVP(p_annotation_value);
10324 s & BOOST_SERIALIZATION_NVP(p_values);
10424 std::vector<SgAsmJvmRuntimeAnnotationValue*>
const&
get_values()
const;
10450 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
10468#ifdef DOCUMENTATION
10477DECLARE_LEAF_CLASS(AsmJvmRuntimeAnnotationPair);
10478IS_SERIALIZABLE(AsmJvmRuntimeAnnotationPair);
10480#ifndef DOCUMENTATION
10481AsmJvmRuntimeAnnotationPair.useSmallHeader(
true);
10484#ifdef DOCUMENTATION
10492#ifndef DOCUMENTATION
10493 AsmJvmRuntimeAnnotationPair.setDataPrototype(
10494 "uint16_t",
"element_name_index",
"= 0",
10495 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10498#ifndef DOCUMENTATION
10499 AsmJvmRuntimeAnnotationPair.setDataPrototype(
10500 "SgAsmJvmRuntimeAnnotationValue*",
"value",
"= nullptr",
10501 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10504 DECLARE_OTHERS(AsmJvmRuntimeAnnotationPair);
10505#if defined(SgAsmJvmRuntimeAnnotationPair_OTHERS) || defined(DOCUMENTATION)
10508#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
10510 friend class boost::serialization::access;
10513 void serialize(S &s,
const unsigned ) {
10515 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
10516 s & BOOST_SERIALIZATION_NVP(p_element_name_index);
10517 s & BOOST_SERIALIZATION_NVP(p_value);
10557 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
10575#ifdef DOCUMENTATION
10584DECLARE_LEAF_CLASS(AsmJvmRuntimeAnnotation);
10585IS_SERIALIZABLE(AsmJvmRuntimeAnnotation);
10587#ifndef DOCUMENTATION
10588AsmJvmRuntimeAnnotation.useSmallHeader(
true);
10591#ifdef DOCUMENTATION
10599#ifndef DOCUMENTATION
10600 AsmJvmRuntimeAnnotation.setDataPrototype(
10601 "uint16_t",
"type_index",
"= 0",
10602 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10605#ifndef DOCUMENTATION
10606 AsmJvmRuntimeAnnotation.setDataPrototype(
10607 "std::vector<SgAsmJvmRuntimeAnnotationPair*>",
"element_value_pairs",
"",
10608 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
10611 DECLARE_OTHERS(AsmJvmRuntimeAnnotation);
10612#if defined(SgAsmJvmRuntimeAnnotation_OTHERS) || defined(DOCUMENTATION)
10615#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
10617 friend class boost::serialization::access;
10620 void serialize(S &s,
const unsigned ) {
10622 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
10623 s & BOOST_SERIALIZATION_NVP(p_type_index);
10624 s & BOOST_SERIALIZATION_NVP(p_element_value_pairs);
10678 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
10696#ifdef DOCUMENTATION
10705DECLARE_LEAF_CLASS(AsmJvmModule);
10706IS_SERIALIZABLE(AsmJvmModule);
10708#ifndef DOCUMENTATION
10709AsmJvmModule.useSmallHeader(
true);
10712DECLARE_HEADERS(AsmJvmModule);
10713#if defined(SgAsmJvmModule_HEADERS) || defined(DOCUMENTATION)
10714#include <sageContainer.h>
10717#ifdef DOCUMENTATION
10727#ifndef DOCUMENTATION
10728 AsmJvmModule.setDataPrototype(
10729 "uint16_t",
"module_name_index",
"= 0",
10730 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10733#ifndef DOCUMENTATION
10734 AsmJvmModule.setDataPrototype(
10735 "uint16_t",
"module_flags",
"= 0",
10736 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10739#ifndef DOCUMENTATION
10740 AsmJvmModule.setDataPrototype(
10741 "uint16_t",
"module_version_index",
"",
10742 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10745#ifndef DOCUMENTATION
10746 AsmJvmModule.setDataPrototype(
10747 "std::vector<SgAsmJvmModule::Requires*>",
"requires",
"",
10748 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10751#ifndef DOCUMENTATION
10752 AsmJvmModule.setDataPrototype(
10753 "std::vector<SgAsmJvmModule::Exports*>",
"exports",
"",
10754 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10757#ifndef DOCUMENTATION
10758 AsmJvmModule.setDataPrototype(
10759 "std::vector<SgAsmJvmModule::Opens*>",
"opens",
"",
10760 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10763#ifndef DOCUMENTATION
10764 AsmJvmModule.setDataPrototype(
10765 "std::vector<uint16_t>",
"uses_index",
"",
10766 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10769#ifndef DOCUMENTATION
10770 AsmJvmModule.setDataPrototype(
10771 "std::vector<SgAsmJvmModule::Provides*>",
"provides",
"",
10772 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
10775 DECLARE_OTHERS(AsmJvmModule);
10776#if defined(SgAsmJvmModule_OTHERS) || defined(DOCUMENTATION)
10779#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
10781 friend class boost::serialization::access;
10784 void serialize(S &s,
const unsigned ) {
10787 s & BOOST_SERIALIZATION_NVP(p_module_name_index);
10788 s & BOOST_SERIALIZATION_NVP(p_module_flags);
10789 s & BOOST_SERIALIZATION_NVP(p_module_version_index);
10790 s & BOOST_SERIALIZATION_NVP(p_requires);
10791 s & BOOST_SERIALIZATION_NVP(p_exports);
10792 s & BOOST_SERIALIZATION_NVP(p_opens);
10793 s & BOOST_SERIALIZATION_NVP(p_uses_index);
10794 s & BOOST_SERIALIZATION_NVP(p_provides);
10806 uint16_t requires_index;
10807 uint16_t requires_flags;
10808 uint16_t requires_version_index;
10810#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
10812 void serialize(S &s,
const unsigned ) {
10813 s & BOOST_SERIALIZATION_NVP(requires_index);
10814 s & BOOST_SERIALIZATION_NVP(requires_flags);
10815 s & BOOST_SERIALIZATION_NVP(requires_version_index);
10824 uint16_t exports_index;
10825 uint16_t exports_flags;
10826 std::vector<uint16_t> exports_to_index;
10828#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
10830 void serialize(S &s,
const unsigned ) {
10831 s & BOOST_SERIALIZATION_NVP(exports_index);
10832 s & BOOST_SERIALIZATION_NVP(exports_flags);
10833 s & BOOST_SERIALIZATION_NVP(exports_to_index);
10842 uint16_t opens_index;
10843 uint16_t opens_flags;
10844 std::vector<uint16_t> opens_to_index;
10846#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
10848 void serialize(S &s,
const unsigned ) {
10849 s & BOOST_SERIALIZATION_NVP(opens_index);
10850 s & BOOST_SERIALIZATION_NVP(opens_flags);
10851 s & BOOST_SERIALIZATION_NVP(opens_to_index);
10860 uint16_t provides_index;
10861 std::vector<uint16_t> provides_with_index;
10863#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
10865 void serialize(S &s,
const unsigned ) {
10866 s & BOOST_SERIALIZATION_NVP(provides_index);
10867 s & BOOST_SERIALIZATION_NVP(provides_with_index);
10986 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
11004#ifdef DOCUMENTATION
11013DECLARE_LEAF_CLASS(AsmJvmMethodTable);
11014IS_SERIALIZABLE(AsmJvmMethodTable);
11016#ifndef DOCUMENTATION
11017AsmJvmMethodTable.useSmallHeader(
true);
11020#ifdef DOCUMENTATION
11029#ifndef DOCUMENTATION
11030 AsmJvmMethodTable.setDataPrototype(
11031 "SgAsmJvmMethodPtrList",
"methods",
"",
11032 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
11035 DECLARE_OTHERS(AsmJvmMethodTable);
11036#if defined(SgAsmJvmMethodTable_OTHERS) || defined(DOCUMENTATION)
11039#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
11041 friend class boost::serialization::access;
11044 void serialize(S &s,
const unsigned ) {
11047 s & BOOST_SERIALIZATION_NVP(p_methods);
11076 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
11094#ifdef DOCUMENTATION
11103DECLARE_LEAF_CLASS(AsmJvmMethodParametersEntry);
11104IS_SERIALIZABLE(AsmJvmMethodParametersEntry);
11106#ifndef DOCUMENTATION
11107AsmJvmMethodParametersEntry.useSmallHeader(
true);
11110#ifdef DOCUMENTATION
11118#ifndef DOCUMENTATION
11119 AsmJvmMethodParametersEntry.setDataPrototype(
11120 "uint16_t",
"name_index",
"= 0",
11121 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11124#ifndef DOCUMENTATION
11125 AsmJvmMethodParametersEntry.setDataPrototype(
11126 "uint16_t",
"access_flags",
"= 0",
11127 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11130 DECLARE_OTHERS(AsmJvmMethodParametersEntry);
11131#if defined(SgAsmJvmMethodParametersEntry_OTHERS) || defined(DOCUMENTATION)
11134#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
11136 friend class boost::serialization::access;
11139 void serialize(S &s,
const unsigned ) {
11141 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
11142 s & BOOST_SERIALIZATION_NVP(p_name_index);
11143 s & BOOST_SERIALIZATION_NVP(p_access_flags);
11181 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
11199#ifdef DOCUMENTATION
11208DECLARE_LEAF_CLASS(AsmJvmMethodParameters);
11209IS_SERIALIZABLE(AsmJvmMethodParameters);
11211#ifndef DOCUMENTATION
11212AsmJvmMethodParameters.useSmallHeader(
true);
11215DECLARE_HEADERS(AsmJvmMethodParameters);
11216#if defined(SgAsmJvmMethodParameters_HEADERS) || defined(DOCUMENTATION)
11217#include <sageContainer.h>
11220#ifdef DOCUMENTATION
11229#ifndef DOCUMENTATION
11230 AsmJvmMethodParameters.setDataPrototype(
11231 "SgAsmJvmMethodParametersEntryPtrList",
"parameters",
"",
11232 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11235 DECLARE_OTHERS(AsmJvmMethodParameters);
11236#if defined(SgAsmJvmMethodParameters_OTHERS) || defined(DOCUMENTATION)
11239#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
11241 friend class boost::serialization::access;
11244 void serialize(S &s,
const unsigned ) {
11247 s & BOOST_SERIALIZATION_NVP(p_parameters);
11275 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
11293#ifdef DOCUMENTATION
11302DECLARE_LEAF_CLASS(AsmJvmMethod);
11303IS_SERIALIZABLE(AsmJvmMethod);
11305#ifndef DOCUMENTATION
11306AsmJvmMethod.useSmallHeader(
true);
11309DECLARE_HEADERS(AsmJvmMethod);
11310#if defined(SgAsmJvmMethod_HEADERS) || defined(DOCUMENTATION)
11311#ifdef ROSE_SgAsmJvmMethod_IMPL
11312#include <SgAsmInstructionList.h>
11313#include <SgAsmJvmAttributeTable.h>
11317#ifdef DOCUMENTATION
11325#ifndef DOCUMENTATION
11326 AsmJvmMethod.setDataPrototype(
11327 "uint16_t",
"access_flags",
"= 0",
11328 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11331#ifndef DOCUMENTATION
11332 AsmJvmMethod.setDataPrototype(
11333 "uint16_t",
"name_index",
"= 0",
11334 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11337#ifndef DOCUMENTATION
11338 AsmJvmMethod.setDataPrototype(
11339 "uint16_t",
"descriptor_index",
"= 0",
11340 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11343#ifndef DOCUMENTATION
11344 AsmJvmMethod.setDataPrototype(
11345 "SgAsmJvmAttributeTable*",
"attribute_table",
"= nullptr",
11346 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
11349#ifndef DOCUMENTATION
11350 AsmJvmMethod.setDataPrototype(
11351 "SgAsmInstructionList*",
"instruction_list",
"= createAndParent<SgAsmInstructionList>(this)",
11352 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11355 DECLARE_OTHERS(AsmJvmMethod);
11356#if defined(SgAsmJvmMethod_OTHERS) || defined(DOCUMENTATION)
11359#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
11361 friend class boost::serialization::access;
11364 void serialize(S &s,
const unsigned ) {
11366 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
11367 s & BOOST_SERIALIZATION_NVP(p_access_flags);
11368 s & BOOST_SERIALIZATION_NVP(p_name_index);
11369 s & BOOST_SERIALIZATION_NVP(p_descriptor_index);
11370 s & BOOST_SERIALIZATION_NVP(p_attribute_table);
11371 s & BOOST_SERIALIZATION_NVP(p_instruction_list);
11437 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
11455#ifdef DOCUMENTATION
11464DECLARE_LEAF_CLASS(AsmJvmLocalVariableTypeTable);
11465IS_SERIALIZABLE(AsmJvmLocalVariableTypeTable);
11467#ifndef DOCUMENTATION
11468AsmJvmLocalVariableTypeTable.useSmallHeader(
true);
11471DECLARE_HEADERS(AsmJvmLocalVariableTypeTable);
11472#if defined(SgAsmJvmLocalVariableTypeTable_HEADERS) || defined(DOCUMENTATION)
11473#include <sageContainer.h>
11476#ifdef DOCUMENTATION
11485#ifndef DOCUMENTATION
11486 AsmJvmLocalVariableTypeTable.setDataPrototype(
11487 "SgAsmJvmLocalVariableTypeEntryPtrList",
"local_variable_type_table",
"",
11488 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11491 DECLARE_OTHERS(AsmJvmLocalVariableTypeTable);
11492#if defined(SgAsmJvmLocalVariableTypeTable_OTHERS) || defined(DOCUMENTATION)
11495#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
11497 friend class boost::serialization::access;
11500 void serialize(S &s,
const unsigned ) {
11503 s & BOOST_SERIALIZATION_NVP(p_local_variable_type_table);
11531 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
11549#ifdef DOCUMENTATION
11558DECLARE_LEAF_CLASS(AsmJvmLocalVariableTypeEntry);
11559IS_SERIALIZABLE(AsmJvmLocalVariableTypeEntry);
11561#ifndef DOCUMENTATION
11562AsmJvmLocalVariableTypeEntry.useSmallHeader(
true);
11565#ifdef DOCUMENTATION
11572#ifndef DOCUMENTATION
11573 AsmJvmLocalVariableTypeEntry.setDataPrototype(
11574 "uint16_t",
"start_pc",
"= 0",
11575 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11578#ifndef DOCUMENTATION
11579 AsmJvmLocalVariableTypeEntry.setDataPrototype(
11580 "uint16_t",
"length",
"= 0",
11581 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11584#ifndef DOCUMENTATION
11585 AsmJvmLocalVariableTypeEntry.setDataPrototype(
11586 "uint16_t",
"name_index",
"= 0",
11587 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11590#ifndef DOCUMENTATION
11591 AsmJvmLocalVariableTypeEntry.setDataPrototype(
11592 "uint16_t",
"signature_index",
"= 0",
11593 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11596#ifndef DOCUMENTATION
11597 AsmJvmLocalVariableTypeEntry.setDataPrototype(
11598 "uint16_t",
"index",
"= 0",
11599 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11602 DECLARE_OTHERS(AsmJvmLocalVariableTypeEntry);
11603#if defined(SgAsmJvmLocalVariableTypeEntry_OTHERS) || defined(DOCUMENTATION)
11606#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
11608 friend class boost::serialization::access;
11611 void serialize(S &s,
const unsigned ) {
11613 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
11614 s & BOOST_SERIALIZATION_NVP(p_start_pc);
11615 s & BOOST_SERIALIZATION_NVP(p_length);
11616 s & BOOST_SERIALIZATION_NVP(p_name_index);
11617 s & BOOST_SERIALIZATION_NVP(p_signature_index);
11618 s & BOOST_SERIALIZATION_NVP(p_index);
11693 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
11711#ifdef DOCUMENTATION
11720DECLARE_LEAF_CLASS(AsmJvmLocalVariableTable);
11721IS_SERIALIZABLE(AsmJvmLocalVariableTable);
11723#ifndef DOCUMENTATION
11724AsmJvmLocalVariableTable.useSmallHeader(
true);
11727DECLARE_HEADERS(AsmJvmLocalVariableTable);
11728#if defined(SgAsmJvmLocalVariableTable_HEADERS) || defined(DOCUMENTATION)
11729#include <sageContainer.h>
11732#ifdef DOCUMENTATION
11741#ifndef DOCUMENTATION
11742 AsmJvmLocalVariableTable.setDataPrototype(
11743 "SgAsmJvmLocalVariableEntryPtrList",
"local_variable_table",
"",
11744 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11747 DECLARE_OTHERS(AsmJvmLocalVariableTable);
11748#if defined(SgAsmJvmLocalVariableTable_OTHERS) || defined(DOCUMENTATION)
11751#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
11753 friend class boost::serialization::access;
11756 void serialize(S &s,
const unsigned ) {
11759 s & BOOST_SERIALIZATION_NVP(p_local_variable_table);
11787 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
11805#ifdef DOCUMENTATION
11814DECLARE_LEAF_CLASS(AsmJvmLocalVariableEntry);
11815IS_SERIALIZABLE(AsmJvmLocalVariableEntry);
11817#ifndef DOCUMENTATION
11818AsmJvmLocalVariableEntry.useSmallHeader(
true);
11821#ifdef DOCUMENTATION
11828#ifndef DOCUMENTATION
11829 AsmJvmLocalVariableEntry.setDataPrototype(
11830 "uint16_t",
"start_pc",
"= 0",
11831 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11834#ifndef DOCUMENTATION
11835 AsmJvmLocalVariableEntry.setDataPrototype(
11836 "uint16_t",
"length",
"= 0",
11837 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11840#ifndef DOCUMENTATION
11841 AsmJvmLocalVariableEntry.setDataPrototype(
11842 "uint16_t",
"name_index",
"= 0",
11843 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11846#ifndef DOCUMENTATION
11847 AsmJvmLocalVariableEntry.setDataPrototype(
11848 "uint16_t",
"descriptor_index",
"= 0",
11849 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11852#ifndef DOCUMENTATION
11853 AsmJvmLocalVariableEntry.setDataPrototype(
11854 "uint16_t",
"index",
"= 0",
11855 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
11858 DECLARE_OTHERS(AsmJvmLocalVariableEntry);
11859#if defined(SgAsmJvmLocalVariableEntry_OTHERS) || defined(DOCUMENTATION)
11862#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
11864 friend class boost::serialization::access;
11867 void serialize(S &s,
const unsigned ) {
11869 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
11870 s & BOOST_SERIALIZATION_NVP(p_start_pc);
11871 s & BOOST_SERIALIZATION_NVP(p_length);
11872 s & BOOST_SERIALIZATION_NVP(p_name_index);
11873 s & BOOST_SERIALIZATION_NVP(p_descriptor_index);
11874 s & BOOST_SERIALIZATION_NVP(p_index);
11949 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
11967#ifdef DOCUMENTATION
11976DECLARE_LEAF_CLASS(AsmJvmLineNumberTable);
11977IS_SERIALIZABLE(AsmJvmLineNumberTable);
11979#ifndef DOCUMENTATION
11980AsmJvmLineNumberTable.useSmallHeader(
true);
11983DECLARE_HEADERS(AsmJvmLineNumberTable);
11984#if defined(SgAsmJvmLineNumberTable_HEADERS) || defined(DOCUMENTATION)
11985#include <sageContainer.h>
11988#ifdef DOCUMENTATION
11997#ifndef DOCUMENTATION
11998 AsmJvmLineNumberTable.setDataPrototype(
11999 "std::vector<SgAsmJvmLineNumberTable::Entry*>",
"line_number_table",
"",
12000 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12003 DECLARE_OTHERS(AsmJvmLineNumberTable);
12004#if defined(SgAsmJvmLineNumberTable_OTHERS) || defined(DOCUMENTATION)
12007#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
12009 friend class boost::serialization::access;
12012 void serialize(S &s,
const unsigned ) {
12015 s & BOOST_SERIALIZATION_NVP(p_line_number_table);
12028 uint16_t start_pc = 0;
12029 uint16_t line_number = 0;
12031#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
12033 void serialize(S &s,
const unsigned ) {
12034 s & BOOST_SERIALIZATION_NVP(start_pc);
12035 s & BOOST_SERIALIZATION_NVP(line_number);
12065 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
12083#ifdef DOCUMENTATION
12092DECLARE_LEAF_CLASS(AsmJvmInstruction);
12093IS_SERIALIZABLE(AsmJvmInstruction);
12095#ifndef DOCUMENTATION
12096AsmJvmInstruction.useSmallHeader(
true);
12099DECLARE_HEADERS(AsmJvmInstruction);
12100#if defined(SgAsmJvmInstruction_HEADERS) || defined(DOCUMENTATION)
12101#include <Rose/BinaryAnalysis/InstructionEnumsJvm.h>
12104#ifdef DOCUMENTATION
12109#ifndef DOCUMENTATION
12110 AsmJvmInstruction.setDataPrototype(
12111 "Rose::BinaryAnalysis::JvmInstructionKind",
"kind",
"= Rose::BinaryAnalysis::JvmInstructionKind::unknown",
12112 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12115 DECLARE_OTHERS(AsmJvmInstruction);
12116#if defined(SgAsmJvmInstruction_OTHERS) || defined(DOCUMENTATION)
12119#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
12121 friend class boost::serialization::access;
12124 void serialize(S &s,
const unsigned ) {
12127 s & BOOST_SERIALIZATION_NVP(p_kind);
12139 Rose::BinaryAnalysis::JvmInstructionKind
const&
get_kind()
const;
12140 void set_kind(Rose::BinaryAnalysis::JvmInstructionKind
const&);
12156 uint8_t
const& architectureId,
12157 Rose::BinaryAnalysis::JvmInstructionKind
const& kind);
12168#ifdef DOCUMENTATION
12177DECLARE_LEAF_CLASS(AsmJvmInnerClasses);
12178IS_SERIALIZABLE(AsmJvmInnerClasses);
12180#ifndef DOCUMENTATION
12181AsmJvmInnerClasses.useSmallHeader(
true);
12184DECLARE_HEADERS(AsmJvmInnerClasses);
12185#if defined(SgAsmJvmInnerClasses_HEADERS) || defined(DOCUMENTATION)
12186#include <sageContainer.h>
12189#ifdef DOCUMENTATION
12198#ifndef DOCUMENTATION
12199 AsmJvmInnerClasses.setDataPrototype(
12200 "std::vector<SgAsmJvmInnerClasses::Entry*>",
"classes",
"",
12201 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12204 DECLARE_OTHERS(AsmJvmInnerClasses);
12205#if defined(SgAsmJvmInnerClasses_OTHERS) || defined(DOCUMENTATION)
12208#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
12210 friend class boost::serialization::access;
12213 void serialize(S &s,
const unsigned ) {
12216 s & BOOST_SERIALIZATION_NVP(p_classes);
12230 uint16_t inner_class_info_index = 0;
12231 uint16_t outer_class_info_index = 0;
12232 uint16_t inner_name_index = 0;
12233 uint16_t inner_class_access_flags = 0;
12235#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
12237 void serialize(S &s,
const unsigned ) {
12238 s & BOOST_SERIALIZATION_NVP(inner_class_info_index);
12239 s & BOOST_SERIALIZATION_NVP(outer_class_info_index);
12240 s & BOOST_SERIALIZATION_NVP(inner_name_index);
12241 s & BOOST_SERIALIZATION_NVP(inner_class_access_flags);
12272 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
12290#ifdef DOCUMENTATION
12299DECLARE_LEAF_CLASS(AsmJvmIndexTableAttr);
12300IS_SERIALIZABLE(AsmJvmIndexTableAttr);
12302#ifndef DOCUMENTATION
12303AsmJvmIndexTableAttr.useSmallHeader(
true);
12306DECLARE_HEADERS(AsmJvmIndexTableAttr);
12307#if defined(SgAsmJvmIndexTableAttr_HEADERS) || defined(DOCUMENTATION)
12308#include <sageContainer.h>
12311#ifdef DOCUMENTATION
12347#ifndef DOCUMENTATION
12348 AsmJvmIndexTableAttr.setDataPrototype(
12349 "unsigned",
"attribute_type",
"= SgAsmJvmIndexTableAttr::ATTR_NONE",
12350 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12353#ifndef DOCUMENTATION
12354 AsmJvmIndexTableAttr.setDataPrototype(
12355 "std::vector<uint16_t>",
"table",
"",
12356 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12359 DECLARE_OTHERS(AsmJvmIndexTableAttr);
12360#if defined(SgAsmJvmIndexTableAttr_OTHERS) || defined(DOCUMENTATION)
12363#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
12365 friend class boost::serialization::access;
12368 void serialize(S &s,
const unsigned ) {
12371 s & BOOST_SERIALIZATION_NVP(p_attribute_type);
12372 s & BOOST_SERIALIZATION_NVP(p_table);
12386 ATTR_ModulePackages,
12388 ATTR_PermittedSubclasses
12427 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
12445#ifdef DOCUMENTATION
12454DECLARE_LEAF_CLASS(AsmJvmIndexedAttr);
12455IS_SERIALIZABLE(AsmJvmIndexedAttr);
12457#ifndef DOCUMENTATION
12458AsmJvmIndexedAttr.useSmallHeader(
true);
12461DECLARE_HEADERS(AsmJvmIndexedAttr);
12462#if defined(SgAsmJvmIndexedAttr_HEADERS) || defined(DOCUMENTATION)
12463#include <sageContainer.h>
12466#ifdef DOCUMENTATION
12497#ifndef DOCUMENTATION
12498 AsmJvmIndexedAttr.setDataPrototype(
12499 "unsigned",
"attribute_type",
"= SgAsmJvmIndexedAttr::ATTR_NONE",
12500 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12503#ifndef DOCUMENTATION
12504 AsmJvmIndexedAttr.setDataPrototype(
12505 "uint16_t",
"index",
"",
12506 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12509 DECLARE_OTHERS(AsmJvmIndexedAttr);
12510#if defined(SgAsmJvmIndexedAttr_OTHERS) || defined(DOCUMENTATION)
12513#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
12515 friend class boost::serialization::access;
12518 void serialize(S &s,
const unsigned ) {
12521 s & BOOST_SERIALIZATION_NVP(p_attribute_type);
12522 s & BOOST_SERIALIZATION_NVP(p_index);
12535 ATTR_ConstantValue,
12540 ATTR_ModuleMainClass,
12580 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
12598#ifdef DOCUMENTATION
12607DECLARE_LEAF_CLASS(AsmJvmFileHeader);
12608IS_SERIALIZABLE(AsmJvmFileHeader);
12610#ifndef DOCUMENTATION
12611AsmJvmFileHeader.useSmallHeader(
true);
12614#ifdef DOCUMENTATION
12624#ifndef DOCUMENTATION
12625 AsmJvmFileHeader.setDataPrototype(
12626 "uint16_t",
"minor_version",
"= 0",
12627 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12630#ifndef DOCUMENTATION
12631 AsmJvmFileHeader.setDataPrototype(
12632 "uint16_t",
"major_version",
"= 0",
12633 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12636#ifndef DOCUMENTATION
12637 AsmJvmFileHeader.setDataPrototype(
12638 "uint16_t",
"access_flags",
"= 0",
12639 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12642#ifndef DOCUMENTATION
12643 AsmJvmFileHeader.setDataPrototype(
12644 "uint16_t",
"this_class",
"= 0",
12645 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12648#ifndef DOCUMENTATION
12649 AsmJvmFileHeader.setDataPrototype(
12650 "uint16_t",
"super_class",
"= 0",
12651 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12654#ifndef DOCUMENTATION
12655 AsmJvmFileHeader.setDataPrototype(
12656 "SgAsmJvmConstantPool*",
"constant_pool",
"= nullptr",
12657 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12660#ifndef DOCUMENTATION
12661 AsmJvmFileHeader.setDataPrototype(
12662 "std::list<uint16_t>",
"interfaces",
"",
12663 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12666#ifndef DOCUMENTATION
12667 AsmJvmFileHeader.setDataPrototype(
12668 "SgAsmJvmFieldTable*",
"field_table",
"= nullptr",
12669 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12672#ifndef DOCUMENTATION
12673 AsmJvmFileHeader.setDataPrototype(
12674 "SgAsmJvmMethodTable*",
"method_table",
"= nullptr",
12675 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12678#ifndef DOCUMENTATION
12679 AsmJvmFileHeader.setDataPrototype(
12680 "SgAsmJvmAttributeTable*",
"attribute_table",
"= nullptr",
12681 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12684 DECLARE_OTHERS(AsmJvmFileHeader);
12685#if defined(SgAsmJvmFileHeader_OTHERS) || defined(DOCUMENTATION)
12688#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
12690 friend class boost::serialization::access;
12693 void serialize(S &s,
const unsigned ) {
12696 s & BOOST_SERIALIZATION_NVP(p_minor_version);
12697 s & BOOST_SERIALIZATION_NVP(p_major_version);
12698 s & BOOST_SERIALIZATION_NVP(p_access_flags);
12699 s & BOOST_SERIALIZATION_NVP(p_this_class);
12700 s & BOOST_SERIALIZATION_NVP(p_super_class);
12701 s & BOOST_SERIALIZATION_NVP(p_constant_pool);
12702 s & BOOST_SERIALIZATION_NVP(p_interfaces);
12703 s & BOOST_SERIALIZATION_NVP(p_field_table);
12704 s & BOOST_SERIALIZATION_NVP(p_method_table);
12705 s & BOOST_SERIALIZATION_NVP(p_attribute_table);
12861#ifdef DOCUMENTATION
12870DECLARE_LEAF_CLASS(AsmJvmFieldTable);
12871IS_SERIALIZABLE(AsmJvmFieldTable);
12873#ifndef DOCUMENTATION
12874AsmJvmFieldTable.useSmallHeader(
true);
12877#ifdef DOCUMENTATION
12886#ifndef DOCUMENTATION
12887 AsmJvmFieldTable.setDataPrototype(
12888 "SgAsmJvmFieldPtrList",
"fields",
"",
12889 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
12892 DECLARE_OTHERS(AsmJvmFieldTable);
12893#if defined(SgAsmJvmFieldTable_OTHERS) || defined(DOCUMENTATION)
12896#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
12898 friend class boost::serialization::access;
12901 void serialize(S &s,
const unsigned ) {
12904 s & BOOST_SERIALIZATION_NVP(p_fields);
12932 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
12950#ifdef DOCUMENTATION
12959DECLARE_LEAF_CLASS(AsmJvmField);
12960IS_SERIALIZABLE(AsmJvmField);
12962#ifndef DOCUMENTATION
12963AsmJvmField.useSmallHeader(
true);
12966DECLARE_HEADERS(AsmJvmField);
12967#if defined(SgAsmJvmField_HEADERS) || defined(DOCUMENTATION)
12968#ifdef ROSE_SgAsmJvmField_IMPL
12969#include <SgAsmJvmAttributeTable.h>
12973#ifdef DOCUMENTATION
12980#ifndef DOCUMENTATION
12981 AsmJvmField.setDataPrototype(
12982 "uint16_t",
"access_flags",
"= 0",
12983 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12986#ifndef DOCUMENTATION
12987 AsmJvmField.setDataPrototype(
12988 "uint16_t",
"name_index",
"= 0",
12989 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12992#ifndef DOCUMENTATION
12993 AsmJvmField.setDataPrototype(
12994 "uint16_t",
"descriptor_index",
"= 0",
12995 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
12998#ifndef DOCUMENTATION
12999 AsmJvmField.setDataPrototype(
13000 "SgAsmJvmAttributeTable*",
"attribute_table",
"= nullptr",
13001 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
13004 DECLARE_OTHERS(AsmJvmField);
13005#if defined(SgAsmJvmField_OTHERS) || defined(DOCUMENTATION)
13008#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
13010 friend class boost::serialization::access;
13013 void serialize(S &s,
const unsigned ) {
13015 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
13016 s & BOOST_SERIALIZATION_NVP(p_access_flags);
13017 s & BOOST_SERIALIZATION_NVP(p_name_index);
13018 s & BOOST_SERIALIZATION_NVP(p_descriptor_index);
13019 s & BOOST_SERIALIZATION_NVP(p_attribute_table);
13075 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
13093#ifdef DOCUMENTATION
13102DECLARE_LEAF_CLASS(AsmJvmExceptionTable);
13103IS_SERIALIZABLE(AsmJvmExceptionTable);
13105#ifndef DOCUMENTATION
13106AsmJvmExceptionTable.useSmallHeader(
true);
13109DECLARE_HEADERS(AsmJvmExceptionTable);
13110#if defined(SgAsmJvmExceptionTable_HEADERS) || defined(DOCUMENTATION)
13111#include <sageContainer.h>
13114#ifdef DOCUMENTATION
13122#ifndef DOCUMENTATION
13123 AsmJvmExceptionTable.setDataPrototype(
13124 "SgAsmJvmExceptionHandlerPtrList",
"handlers",
"",
13125 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13128 DECLARE_OTHERS(AsmJvmExceptionTable);
13129#if defined(SgAsmJvmExceptionTable_OTHERS) || defined(DOCUMENTATION)
13132#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
13134 friend class boost::serialization::access;
13137 void serialize(S &s,
const unsigned ) {
13139 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
13140 s & BOOST_SERIALIZATION_NVP(p_handlers);
13169 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
13187#ifdef DOCUMENTATION
13196DECLARE_LEAF_CLASS(AsmJvmExceptionHandler);
13197IS_SERIALIZABLE(AsmJvmExceptionHandler);
13199#ifndef DOCUMENTATION
13200AsmJvmExceptionHandler.useSmallHeader(
true);
13203#ifdef DOCUMENTATION
13210#ifndef DOCUMENTATION
13211 AsmJvmExceptionHandler.setDataPrototype(
13212 "uint16_t",
"start_pc",
"= 0",
13213 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13216#ifndef DOCUMENTATION
13217 AsmJvmExceptionHandler.setDataPrototype(
13218 "uint16_t",
"end_pc",
"= 0",
13219 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13222#ifndef DOCUMENTATION
13223 AsmJvmExceptionHandler.setDataPrototype(
13224 "uint16_t",
"handler_pc",
"= 0",
13225 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13228#ifndef DOCUMENTATION
13229 AsmJvmExceptionHandler.setDataPrototype(
13230 "uint16_t",
"catch_type",
"= 0",
13231 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13234 DECLARE_OTHERS(AsmJvmExceptionHandler);
13235#if defined(SgAsmJvmExceptionHandler_OTHERS) || defined(DOCUMENTATION)
13238#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
13240 friend class boost::serialization::access;
13243 void serialize(S &s,
const unsigned ) {
13245 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
13246 s & BOOST_SERIALIZATION_NVP(p_start_pc);
13247 s & BOOST_SERIALIZATION_NVP(p_end_pc);
13248 s & BOOST_SERIALIZATION_NVP(p_handler_pc);
13249 s & BOOST_SERIALIZATION_NVP(p_catch_type);
13310 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
13328#ifdef DOCUMENTATION
13337DECLARE_LEAF_CLASS(AsmJvmEnclosingMethod);
13338IS_SERIALIZABLE(AsmJvmEnclosingMethod);
13340#ifndef DOCUMENTATION
13341AsmJvmEnclosingMethod.useSmallHeader(
true);
13344#ifdef DOCUMENTATION
13353#ifndef DOCUMENTATION
13354 AsmJvmEnclosingMethod.setDataPrototype(
13355 "uint16_t",
"class_index",
"= 0",
13356 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13359#ifndef DOCUMENTATION
13360 AsmJvmEnclosingMethod.setDataPrototype(
13361 "uint16_t",
"method_index",
"= 0",
13362 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13365 DECLARE_OTHERS(AsmJvmEnclosingMethod);
13366#if defined(SgAsmJvmEnclosingMethod_OTHERS) || defined(DOCUMENTATION)
13369#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
13371 friend class boost::serialization::access;
13374 void serialize(S &s,
const unsigned ) {
13377 s & BOOST_SERIALIZATION_NVP(p_class_index);
13378 s & BOOST_SERIALIZATION_NVP(p_method_index);
13416 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
13434#ifdef DOCUMENTATION
13443DECLARE_LEAF_CLASS(AsmJvmConstantPoolEntry);
13444IS_SERIALIZABLE(AsmJvmConstantPoolEntry);
13446#ifndef DOCUMENTATION
13447AsmJvmConstantPoolEntry.useSmallHeader(
true);
13450#ifdef DOCUMENTATION
13458#ifndef DOCUMENTATION
13459 AsmJvmConstantPoolEntry.setDataPrototype(
13460 "SgAsmJvmConstantPoolEntry::Kind",
"tag",
"= SgAsmJvmConstantPoolEntry::EMPTY",
13461 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13464#ifndef DOCUMENTATION
13465 AsmJvmConstantPoolEntry.setDataPrototype(
13466 "uint32_t",
"bytes",
"= 0",
13467 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13470#ifndef DOCUMENTATION
13471 AsmJvmConstantPoolEntry.setDataPrototype(
13472 "uint32_t",
"hi_bytes",
"= 0",
13473 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13476#ifndef DOCUMENTATION
13477 AsmJvmConstantPoolEntry.setDataPrototype(
13478 "uint32_t",
"low_bytes",
"= 0",
13479 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13482#ifndef DOCUMENTATION
13483 AsmJvmConstantPoolEntry.setDataPrototype(
13484 "uint16_t",
"bootstrap_method_attr_index",
"= 0",
13485 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13488#ifndef DOCUMENTATION
13489 AsmJvmConstantPoolEntry.setDataPrototype(
13490 "uint16_t",
"class_index",
"= 0",
13491 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13494#ifndef DOCUMENTATION
13495 AsmJvmConstantPoolEntry.setDataPrototype(
13496 "uint16_t",
"descriptor_index",
"= 0",
13497 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13500#ifndef DOCUMENTATION
13501 AsmJvmConstantPoolEntry.setDataPrototype(
13502 "uint16_t",
"name_index",
"= 0",
13503 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13506#ifndef DOCUMENTATION
13507 AsmJvmConstantPoolEntry.setDataPrototype(
13508 "uint16_t",
"name_and_type_index",
"= 0",
13509 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13512#ifndef DOCUMENTATION
13513 AsmJvmConstantPoolEntry.setDataPrototype(
13514 "uint16_t",
"reference_index",
"= 0",
13515 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13518#ifndef DOCUMENTATION
13519 AsmJvmConstantPoolEntry.setDataPrototype(
13520 "uint8_t",
"reference_kind",
"= 0",
13521 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13524#ifndef DOCUMENTATION
13525 AsmJvmConstantPoolEntry.setDataPrototype(
13526 "uint16_t",
"string_index",
"= 0",
13527 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13530#ifndef DOCUMENTATION
13531 AsmJvmConstantPoolEntry.setDataPrototype(
13532 "uint16_t",
"length",
"= 0",
13533 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13536#ifndef DOCUMENTATION
13537 AsmJvmConstantPoolEntry.setDataPrototype(
13538 "char*",
"utf8_bytes",
"= nullptr",
13539 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13542 DECLARE_OTHERS(AsmJvmConstantPoolEntry);
13543#if defined(SgAsmJvmConstantPoolEntry_OTHERS) || defined(DOCUMENTATION)
13546#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
13548 friend class boost::serialization::access;
13551 void serialize(S &s,
const unsigned ) {
13553 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
13554 s & BOOST_SERIALIZATION_NVP(p_tag);
13555 s & BOOST_SERIALIZATION_NVP(p_bytes);
13556 s & BOOST_SERIALIZATION_NVP(p_hi_bytes);
13557 s & BOOST_SERIALIZATION_NVP(p_low_bytes);
13558 s & BOOST_SERIALIZATION_NVP(p_bootstrap_method_attr_index);
13559 s & BOOST_SERIALIZATION_NVP(p_class_index);
13560 s & BOOST_SERIALIZATION_NVP(p_descriptor_index);
13561 s & BOOST_SERIALIZATION_NVP(p_name_index);
13562 s & BOOST_SERIALIZATION_NVP(p_name_and_type_index);
13563 s & BOOST_SERIALIZATION_NVP(p_reference_index);
13564 s & BOOST_SERIALIZATION_NVP(p_reference_kind);
13565 s & BOOST_SERIALIZATION_NVP(p_string_index);
13566 s & BOOST_SERIALIZATION_NVP(p_length);
13581 CONSTANT_Integer = 3,
13582 CONSTANT_Float = 4,
13584 CONSTANT_Double = 6,
13585 CONSTANT_Class = 7,
13586 CONSTANT_String = 8,
13587 CONSTANT_Fieldref = 9,
13588 CONSTANT_Methodref = 10,
13589 CONSTANT_InterfaceMethodref = 11,
13590 CONSTANT_NameAndType = 12,
13591 CONSTANT_MethodHandle = 15,
13592 CONSTANT_MethodType = 16,
13593 CONSTANT_Dynamic = 17,
13594 CONSTANT_InvokeDynamic = 18,
13595 CONSTANT_Module = 19,
13596 CONSTANT_Package = 20
13599#ifdef DOCUMENTATION
13607 uint16_t name_index;
13614 uint16_t class_index;
13615 uint16_t name_and_type_index;
13619 uint16_t class_index;
13620 uint16_t name_and_type_index;
13624 uint16_t class_index;
13625 uint16_t name_and_type_index;
13631 uint16_t string_index;
13646 uint32_t low_bytes;
13651 uint32_t low_bytes;
13657 uint16_t name_index;
13658 uint16_t descriptor_index;
13671 uint8_t reference_kind;
13672 uint16_t reference_index;
13678 uint16_t descriptor_index;
13684 uint16_t bootstrap_method_attr_index;
13685 uint16_t name_and_type_index;
13689 uint16_t bootstrap_method_attr_index;
13690 uint16_t name_and_type_index;
13696 uint16_t name_index;
13702 uint16_t name_index;
13884 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
13905#ifdef DOCUMENTATION
13914DECLARE_LEAF_CLASS(AsmJvmConstantPool);
13915IS_SERIALIZABLE(AsmJvmConstantPool);
13917#ifndef DOCUMENTATION
13918AsmJvmConstantPool.useSmallHeader(
true);
13921#ifdef DOCUMENTATION
13930#ifndef DOCUMENTATION
13931 AsmJvmConstantPool.setDataPrototype(
13932 "SgAsmJvmConstantPoolEntryPtrList",
"entries",
"",
13933 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
13936 DECLARE_OTHERS(AsmJvmConstantPool);
13937#if defined(SgAsmJvmConstantPool_OTHERS) || defined(DOCUMENTATION)
13940#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
13942 friend class boost::serialization::access;
13945 void serialize(S &s,
const unsigned ) {
13948 s & BOOST_SERIALIZATION_NVP(p_entries);
13990 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
14012#ifdef DOCUMENTATION
14021DECLARE_LEAF_CLASS(AsmJvmCodeAttribute);
14022IS_SERIALIZABLE(AsmJvmCodeAttribute);
14024#ifndef DOCUMENTATION
14025AsmJvmCodeAttribute.useSmallHeader(
true);
14028DECLARE_HEADERS(AsmJvmCodeAttribute);
14029#if defined(SgAsmJvmCodeAttribute_HEADERS) || defined(DOCUMENTATION)
14030#include <Rose/BinaryAnalysis/Address.h>
14033#ifdef DOCUMENTATION
14042#ifndef DOCUMENTATION
14043 AsmJvmCodeAttribute.setDataPrototype(
14044 "uint16_t",
"max_stack",
"= 0",
14045 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14048#ifndef DOCUMENTATION
14049 AsmJvmCodeAttribute.setDataPrototype(
14050 "uint16_t",
"max_locals",
"= 0",
14051 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14054#ifndef DOCUMENTATION
14055 AsmJvmCodeAttribute.setDataPrototype(
14056 "uint32_t",
"code_length",
"= 0",
14057 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14060#ifndef DOCUMENTATION
14061 AsmJvmCodeAttribute.setDataPrototype(
14062 "const char*",
"code",
"= nullptr",
14063 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14066#ifndef DOCUMENTATION
14067 AsmJvmCodeAttribute.setDataPrototype(
14068 "SgAsmJvmExceptionTable*",
"exception_table",
"= nullptr",
14069 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14072#ifndef DOCUMENTATION
14073 AsmJvmCodeAttribute.setDataPrototype(
14074 "SgAsmJvmAttributeTable*",
"attribute_table",
"= nullptr",
14075 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14078#ifndef DOCUMENTATION
14079 AsmJvmCodeAttribute.setDataPrototype(
14080 "Rose::BinaryAnalysis::Address",
"code_offset",
"= 0",
14081 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14084 DECLARE_OTHERS(AsmJvmCodeAttribute);
14085#if defined(SgAsmJvmCodeAttribute_OTHERS) || defined(DOCUMENTATION)
14088#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
14090 friend class boost::serialization::access;
14093 void serialize(S &s,
const unsigned ) {
14096 s & BOOST_SERIALIZATION_NVP(p_max_stack);
14097 s & BOOST_SERIALIZATION_NVP(p_max_locals);
14098 s & BOOST_SERIALIZATION_NVP(p_code_length);
14099 s & BOOST_SERIALIZATION_NVP(p_exception_table);
14100 s & BOOST_SERIALIZATION_NVP(p_attribute_table);
14101 s & BOOST_SERIALIZATION_NVP(p_code_offset);
14192 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
14210#ifdef DOCUMENTATION
14219DECLARE_LEAF_CLASS(AsmJvmClass);
14220IS_SERIALIZABLE(AsmJvmClass);
14222#ifndef DOCUMENTATION
14223AsmJvmClass.useSmallHeader(
true);
14226#ifdef DOCUMENTATION
14233 DECLARE_OTHERS(AsmJvmClass);
14234#if defined(SgAsmJvmClass_OTHERS) || defined(DOCUMENTATION)
14237#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
14239 friend class boost::serialization::access;
14242 void serialize(S &s,
const unsigned ) {
14244 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
14266#ifdef DOCUMENTATION
14275DECLARE_LEAF_CLASS(AsmJvmBootstrapMethods);
14276IS_SERIALIZABLE(AsmJvmBootstrapMethods);
14278#ifndef DOCUMENTATION
14279AsmJvmBootstrapMethods.useSmallHeader(
true);
14282DECLARE_HEADERS(AsmJvmBootstrapMethods);
14283#if defined(SgAsmJvmBootstrapMethods_HEADERS) || defined(DOCUMENTATION)
14284#include <sageContainer.h>
14287#ifdef DOCUMENTATION
14295#ifndef DOCUMENTATION
14296 AsmJvmBootstrapMethods.setDataPrototype(
14297 "SgAsmJvmBootstrapMethodPtrList",
"bootstrap_methods",
"",
14298 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14301 DECLARE_OTHERS(AsmJvmBootstrapMethods);
14302#if defined(SgAsmJvmBootstrapMethods_OTHERS) || defined(DOCUMENTATION)
14305#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
14307 friend class boost::serialization::access;
14310 void serialize(S &s,
const unsigned ) {
14313 s & BOOST_SERIALIZATION_NVP(p_bootstrap_methods);
14345 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
14363#ifdef DOCUMENTATION
14372DECLARE_LEAF_CLASS(AsmJvmBootstrapMethod);
14373IS_SERIALIZABLE(AsmJvmBootstrapMethod);
14375#ifndef DOCUMENTATION
14376AsmJvmBootstrapMethod.useSmallHeader(
true);
14379DECLARE_HEADERS(AsmJvmBootstrapMethod);
14380#if defined(SgAsmJvmBootstrapMethod_HEADERS) || defined(DOCUMENTATION)
14381#include <sageContainer.h>
14384#ifdef DOCUMENTATION
14393#ifndef DOCUMENTATION
14394 AsmJvmBootstrapMethod.setDataPrototype(
14395 "uint16_t",
"bootstrap_method_ref",
"= 0",
14396 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14399#ifndef DOCUMENTATION
14400 AsmJvmBootstrapMethod.setDataPrototype(
14401 "SgUnsigned16List",
"bootstrap_arguments",
"",
14402 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14405 DECLARE_OTHERS(AsmJvmBootstrapMethod);
14406#if defined(SgAsmJvmBootstrapMethod_OTHERS) || defined(DOCUMENTATION)
14409#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
14411 friend class boost::serialization::access;
14414 void serialize(S &s,
const unsigned ) {
14416 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
14417 s & BOOST_SERIALIZATION_NVP(p_bootstrap_method_ref);
14418 s & BOOST_SERIALIZATION_NVP(p_bootstrap_arguments);
14457 void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
14475#ifdef DOCUMENTATION
14484DECLARE_LEAF_CLASS(AsmJvmAttributeTable);
14485IS_SERIALIZABLE(AsmJvmAttributeTable);
14487#ifndef DOCUMENTATION
14488AsmJvmAttributeTable.useSmallHeader(
true);
14491#ifdef DOCUMENTATION
14500#ifndef DOCUMENTATION
14501 AsmJvmAttributeTable.setDataPrototype(
14502 "SgAsmJvmAttributePtrList",
"attributes",
"",
14503 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
14506 DECLARE_OTHERS(AsmJvmAttributeTable);
14507#if defined(SgAsmJvmAttributeTable_OTHERS) || defined(DOCUMENTATION)
14510#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
14512 friend class boost::serialization::access;
14515 void serialize(S &s,
const unsigned ) {
14518 s & BOOST_SERIALIZATION_NVP(p_attributes);
14549 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
14567#ifdef DOCUMENTATION
14576DECLARE_LEAF_CLASS(AsmJvmAnnotationDefault);
14577IS_SERIALIZABLE(AsmJvmAnnotationDefault);
14579#ifndef DOCUMENTATION
14580AsmJvmAnnotationDefault.useSmallHeader(
true);
14583#ifdef DOCUMENTATION
14594#ifndef DOCUMENTATION
14595 AsmJvmAnnotationDefault.setDataPrototype(
14596 "SgAsmJvmRuntimeAnnotationValue*",
"default_value",
"= nullptr",
14597 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14600 DECLARE_OTHERS(AsmJvmAnnotationDefault);
14601#if defined(SgAsmJvmAnnotationDefault_OTHERS) || defined(DOCUMENTATION)
14604#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
14606 friend class boost::serialization::access;
14609 void serialize(S &s,
const unsigned ) {
14612 s & BOOST_SERIALIZATION_NVP(p_default_value);
14641 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
14659#ifdef DOCUMENTATION
14668#ifndef DOCUMENTATION
14669AstNodeClass& AsmJvmAttribute = nonTerminalConstructor(
14673 "AsmJvmAttributeTag",
14674 SubclassListBuilder()
14675 | AsmJvmAnnotationDefault
14676 | AsmJvmBootstrapMethods
14677 | AsmJvmCodeAttribute
14678 | AsmJvmEnclosingMethod
14679 | AsmJvmIndexedAttr
14680 | AsmJvmIndexTableAttr
14681 | AsmJvmInnerClasses
14682 | AsmJvmLineNumberTable
14683 | AsmJvmLocalVariableTable
14684 | AsmJvmLocalVariableTypeTable
14685 | AsmJvmMethodParameters
14687 | AsmJvmRuntimeInvisibleAnnotations
14688 | AsmJvmRuntimeVisibilityParamAnnotations
14689 | AsmJvmRuntimeVisibleAnnotations
14690 | AsmJvmStackMapTable
14692assert(AsmJvmAttribute.associatedGrammar !=
nullptr);
14693AsmJvmAttribute.setCppCondition(
"!defined(DOCUMENTATION)");
14694AsmJvmAttribute.isBoostSerializable(
true);
14695AsmJvmAttribute.setAutomaticGenerationOfConstructor(
false);
14696AsmJvmAttribute.setAutomaticGenerationOfDestructor(
false);
14699#ifndef DOCUMENTATION
14700AsmJvmAttribute.useSmallHeader(
true);
14703#ifdef DOCUMENTATION
14708#ifndef DOCUMENTATION
14709 AsmJvmAttribute.setDataPrototype(
14710 "uint16_t",
"attribute_name_index",
"= 0",
14711 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14714#ifndef DOCUMENTATION
14715 AsmJvmAttribute.setDataPrototype(
14716 "uint32_t",
"attribute_length",
"= 0",
14717 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14720 DECLARE_OTHERS(AsmJvmAttribute);
14721#if defined(SgAsmJvmAttribute_OTHERS) || defined(DOCUMENTATION)
14724#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
14726 friend class boost::serialization::access;
14729 void serialize(S &s,
const unsigned ) {
14731 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmJvmNode);
14732 s & BOOST_SERIALIZATION_NVP(p_attribute_name_index);
14733 s & BOOST_SERIALIZATION_NVP(p_attribute_length);
14769 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
14787#ifdef DOCUMENTATION
14796#ifndef DOCUMENTATION
14797AstNodeClass& AsmJvmNode = nonTerminalConstructor(
14802 SubclassListBuilder()
14804 | AsmJvmBootstrapMethod
14806 | AsmJvmConstantPoolEntry
14807 | AsmJvmExceptionHandler
14808 | AsmJvmExceptionTable
14810 | AsmJvmLocalVariableEntry
14811 | AsmJvmLocalVariableTypeEntry
14813 | AsmJvmMethodParametersEntry
14814 | AsmJvmRuntimeAnnotation
14815 | AsmJvmRuntimeAnnotationPair
14816 | AsmJvmRuntimeAnnotationValue
14817 | AsmJvmRuntimeParameterAnnotation
14818 | AsmJvmStackMapFrame
14819 | AsmJvmStackMapVerificationType
14821assert(AsmJvmNode.associatedGrammar !=
nullptr);
14822AsmJvmNode.setCppCondition(
"!defined(DOCUMENTATION)");
14823AsmJvmNode.isBoostSerializable(
true);
14824AsmJvmNode.setAutomaticGenerationOfConstructor(
false);
14825AsmJvmNode.setAutomaticGenerationOfDestructor(
false);
14828#ifndef DOCUMENTATION
14829AsmJvmNode.useSmallHeader(
true);
14832#ifdef DOCUMENTATION
14837 DECLARE_OTHERS(AsmJvmNode);
14838#if defined(SgAsmJvmNode_OTHERS) || defined(DOCUMENTATION)
14841#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
14843 friend class boost::serialization::access;
14846 void serialize(S &s,
const unsigned ) {
14848 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmNode);
14857 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
14875#ifdef DOCUMENTATION
14884DECLARE_LEAF_CLASS(AsmInterpretationList);
14885IS_SERIALIZABLE(AsmInterpretationList);
14887#ifndef DOCUMENTATION
14888AsmInterpretationList.useSmallHeader(
true);
14891DECLARE_HEADERS(AsmInterpretationList);
14892#if defined(SgAsmInterpretationList_HEADERS) || defined(DOCUMENTATION)
14893#include <sageContainer.h>
14896#ifdef DOCUMENTATION
14900#ifndef DOCUMENTATION
14901 AsmInterpretationList.setDataPrototype(
14902 "SgAsmInterpretationPtrList",
"interpretations",
"",
14903 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
14906 DECLARE_OTHERS(AsmInterpretationList);
14907#if defined(SgAsmInterpretationList_OTHERS) || defined(DOCUMENTATION)
14910#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
14912 friend class boost::serialization::access;
14915 void serialize(S &s,
const unsigned ) {
14917 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmNode);
14918 s & BOOST_SERIALIZATION_NVP(p_interpretations);
14952#ifdef DOCUMENTATION
14961DECLARE_LEAF_CLASS(AsmInterpretation);
14962IS_SERIALIZABLE(AsmInterpretation);
14964#ifndef DOCUMENTATION
14965AsmInterpretation.useSmallHeader(
true);
14968DECLARE_HEADERS(AsmInterpretation);
14969#if defined(SgAsmInterpretation_HEADERS) || defined(DOCUMENTATION)
14970#include <Rose/BinaryAnalysis/BasicTypes.h>
14971#include <Rose/BinaryAnalysis/InstructionMap.h>
14972#include <Rose/BinaryAnalysis/MemoryMap.h>
14974#ifdef ROSE_SgAsmInterpretation_IMPL
14975#include <SgAsmBlock.h>
14976#include <SgAsmGenericHeaderList.h>
14980#ifdef DOCUMENTATION
14990#ifndef DOCUMENTATION
14991 AsmInterpretation.setDataPrototype(
14992 "SgAsmGenericHeaderList*",
"headers",
"= createAndParent<SgAsmGenericHeaderList>(this)",
14993 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
14996#ifndef DOCUMENTATION
14997 AsmInterpretation.setDataPrototype(
14998 "SgAsmBlock*",
"globalBlock",
"= nullptr",
14999 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
15002#ifndef DOCUMENTATION
15003 AsmInterpretation.setDataPrototype(
15004 "bool",
"coverageComputed",
"= false",
15005 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15008#ifndef DOCUMENTATION
15009 AsmInterpretation.setDataPrototype(
15010 "double",
"percentageCoverage",
"= NAN",
15011 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15014 DECLARE_OTHERS(AsmInterpretation);
15015#if defined(SgAsmInterpretation_OTHERS) || defined(DOCUMENTATION)
15018#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
15020 friend class boost::serialization::access;
15023 void serialize(S &s,
const unsigned ) {
15025 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmNode);
15026 s & BOOST_SERIALIZATION_NVP(p_headers);
15027 s & BOOST_SERIALIZATION_NVP(p_globalBlock);
15028 s & BOOST_SERIALIZATION_NVP(p_map);
15029 s & BOOST_SERIALIZATION_NVP(instruction_map);
15030 s & BOOST_SERIALIZATION_NVP(p_coverageComputed);
15031 s & BOOST_SERIALIZATION_NVP(p_percentageCoverage);
15137 Rose::BinaryAnalysis::InstructionMap& get_instruction_map(
bool=false) ROSE_DEPRECATED("use
get_instructionMap");
15138 void set_instruction_map(const
Rose::BinaryAnalysis::InstructionMap&) ROSE_DEPRECATED("use
set_instructionMap");
15139 void insert_instructions(
Rose::BinaryAnalysis::InstructionMap&) ROSE_DEPRECATED("use
insertInstructions");
15140 void erase_instructions(
Rose::BinaryAnalysis::InstructionMap&) ROSE_DEPRECATED("use
eraseInstructions");
15158#ifdef DOCUMENTATION
15167DECLARE_LEAF_CLASS(AsmIntegerValueExpression);
15168IS_SERIALIZABLE(AsmIntegerValueExpression);
15170#ifndef DOCUMENTATION
15171AsmIntegerValueExpression.useSmallHeader(
true);
15174#ifdef DOCUMENTATION
15193#ifndef DOCUMENTATION
15194 AsmIntegerValueExpression.setDataPrototype(
15195 "SgNode*",
"baseNode",
"= nullptr",
15196 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15199 DECLARE_OTHERS(AsmIntegerValueExpression);
15200#if defined(SgAsmIntegerValueExpression_OTHERS) || defined(DOCUMENTATION)
15203#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
15205 friend class boost::serialization::access;
15208 void serialize(S &s,
const unsigned ) {
15211 s & BOOST_SERIALIZATION_NVP(p_baseNode);
15328#ifdef DOCUMENTATION
15337DECLARE_LEAF_CLASS(AsmIntegerType);
15338IS_SERIALIZABLE(AsmIntegerType);
15340#ifndef DOCUMENTATION
15341AsmIntegerType.useSmallHeader(
true);
15344DECLARE_HEADERS(AsmIntegerType);
15345#if defined(SgAsmIntegerType_HEADERS) || defined(DOCUMENTATION)
15346#include <Rose/BinaryAnalysis/ByteOrder.h>
15349#ifdef DOCUMENTATION
15354#ifndef DOCUMENTATION
15355 AsmIntegerType.setDataPrototype(
15356 "bool",
"isSigned",
"= false",
15357 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15360 DECLARE_OTHERS(AsmIntegerType);
15361#if defined(SgAsmIntegerType_OTHERS) || defined(DOCUMENTATION)
15364#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
15366 friend class boost::serialization::access;
15369 void serialize(S &s,
const unsigned ) {
15372 s & BOOST_SERIALIZATION_NVP(p_isSigned);
15418#ifdef DOCUMENTATION
15427DECLARE_LEAF_CLASS(AsmInstructionList);
15428IS_SERIALIZABLE(AsmInstructionList);
15430#ifndef DOCUMENTATION
15431AsmInstructionList.useSmallHeader(
true);
15434DECLARE_HEADERS(AsmInstructionList);
15435#if defined(SgAsmInstructionList_HEADERS) || defined(DOCUMENTATION)
15436#include <sageContainer.h>
15439#ifdef DOCUMENTATION
15444#ifndef DOCUMENTATION
15445 AsmInstructionList.setDataPrototype(
15446 "SgAsmInstructionPtrList",
"instructions",
"",
15447 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15450 DECLARE_OTHERS(AsmInstructionList);
15451#if defined(SgAsmInstructionList_OTHERS) || defined(DOCUMENTATION)
15454#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
15456 friend class boost::serialization::access;
15459 void serialize(S &s,
const unsigned ) {
15461 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmNode);
15462 s & BOOST_SERIALIZATION_NVP(p_instructions);
15497#ifdef DOCUMENTATION
15506DECLARE_LEAF_CLASS(AsmIndirectRegisterExpression);
15507IS_SERIALIZABLE(AsmIndirectRegisterExpression);
15509#ifndef DOCUMENTATION
15510AsmIndirectRegisterExpression.useSmallHeader(
true);
15513#ifdef DOCUMENTATION
15532#ifndef DOCUMENTATION
15533 AsmIndirectRegisterExpression.setDataPrototype(
15534 "Rose::BinaryAnalysis::RegisterDescriptor",
"stride",
"",
15535 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15538#ifndef DOCUMENTATION
15539 AsmIndirectRegisterExpression.setDataPrototype(
15540 "Rose::BinaryAnalysis::RegisterDescriptor",
"offset",
"",
15541 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15544#ifndef DOCUMENTATION
15545 AsmIndirectRegisterExpression.setDataPrototype(
15546 "size_t",
"index",
"= 0",
15547 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15550#ifndef DOCUMENTATION
15551 AsmIndirectRegisterExpression.setDataPrototype(
15552 "size_t",
"modulus",
"= 0",
15553 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15556 DECLARE_OTHERS(AsmIndirectRegisterExpression);
15557#if defined(SgAsmIndirectRegisterExpression_OTHERS) || defined(DOCUMENTATION)
15560#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
15562 friend class boost::serialization::access;
15565 void serialize(S &s,
const unsigned ) {
15568 s & BOOST_SERIALIZATION_NVP(p_stride);
15569 s & BOOST_SERIALIZATION_NVP(p_offset);
15570 s & BOOST_SERIALIZATION_NVP(p_index);
15571 s & BOOST_SERIALIZATION_NVP(p_modulus);
15629 size_t const& index,
15630 size_t const& modulus);
15641#ifdef DOCUMENTATION
15650DECLARE_LEAF_CLASS(AsmGenericSymbolList);
15651IS_SERIALIZABLE(AsmGenericSymbolList);
15653#ifndef DOCUMENTATION
15654AsmGenericSymbolList.useSmallHeader(
true);
15657DECLARE_HEADERS(AsmGenericSymbolList);
15658#if defined(SgAsmGenericSymbolList_HEADERS) || defined(DOCUMENTATION)
15659#include <sageContainer.h>
15662#ifdef DOCUMENTATION
15670#ifndef DOCUMENTATION
15671 AsmGenericSymbolList.setDataPrototype(
15672 "SgAsmGenericSymbolPtrList",
"symbols",
"",
15673 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15676 DECLARE_OTHERS(AsmGenericSymbolList);
15677#if defined(SgAsmGenericSymbolList_OTHERS) || defined(DOCUMENTATION)
15680#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
15682 friend class boost::serialization::access;
15685 void serialize(S &s,
const unsigned ) {
15688 s & BOOST_SERIALIZATION_NVP(p_symbols);
15719#ifdef DOCUMENTATION
15728DECLARE_LEAF_CLASS(AsmGenericSectionList);
15729IS_SERIALIZABLE(AsmGenericSectionList);
15731#ifndef DOCUMENTATION
15732AsmGenericSectionList.useSmallHeader(
true);
15735DECLARE_HEADERS(AsmGenericSectionList);
15736#if defined(SgAsmGenericSectionList_HEADERS) || defined(DOCUMENTATION)
15737#include <sageContainer.h>
15740#ifdef DOCUMENTATION
15748#ifndef DOCUMENTATION
15749 AsmGenericSectionList.setDataPrototype(
15750 "SgAsmGenericSectionPtrList",
"sections",
"",
15751 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
15754 DECLARE_OTHERS(AsmGenericSectionList);
15755#if defined(SgAsmGenericSectionList_OTHERS) || defined(DOCUMENTATION)
15758#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
15760 friend class boost::serialization::access;
15763 void serialize(S &s,
const unsigned ) {
15766 s & BOOST_SERIALIZATION_NVP(p_sections);
15797#ifdef DOCUMENTATION
15806DECLARE_LEAF_CLASS(AsmGenericHeaderList);
15807IS_SERIALIZABLE(AsmGenericHeaderList);
15809#ifndef DOCUMENTATION
15810AsmGenericHeaderList.useSmallHeader(
true);
15813DECLARE_HEADERS(AsmGenericHeaderList);
15814#if defined(SgAsmGenericHeaderList_HEADERS) || defined(DOCUMENTATION)
15815#include <sageContainer.h>
15818#ifdef DOCUMENTATION
15826#ifndef DOCUMENTATION
15827 AsmGenericHeaderList.setDataPrototype(
15828 "SgAsmGenericHeaderPtrList",
"headers",
"",
15829 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
15832 DECLARE_OTHERS(AsmGenericHeaderList);
15833#if defined(SgAsmGenericHeaderList_OTHERS) || defined(DOCUMENTATION)
15836#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
15838 friend class boost::serialization::access;
15841 void serialize(S &s,
const unsigned ) {
15844 s & BOOST_SERIALIZATION_NVP(p_headers);
15875#ifdef DOCUMENTATION
15884DECLARE_LEAF_CLASS(AsmGenericFormat);
15885IS_SERIALIZABLE(AsmGenericFormat);
15887#ifndef DOCUMENTATION
15888AsmGenericFormat.useSmallHeader(
true);
15891DECLARE_HEADERS(AsmGenericFormat);
15892#if defined(SgAsmGenericFormat_HEADERS) || defined(DOCUMENTATION)
15893#include <Rose/BinaryAnalysis/ByteOrder.h>
15896#ifdef DOCUMENTATION
15901#ifndef DOCUMENTATION
15902 AsmGenericFormat.setDataPrototype(
15903 "SgAsmGenericFormat::ExecFamily",
"family",
"= SgAsmGenericFormat::FAMILY_UNSPECIFIED",
15904 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15907#ifndef DOCUMENTATION
15908 AsmGenericFormat.setDataPrototype(
15909 "SgAsmGenericFormat::ExecPurpose",
"purpose",
"= SgAsmGenericFormat::PURPOSE_EXECUTABLE",
15910 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15913#ifndef DOCUMENTATION
15914 AsmGenericFormat.setDataPrototype(
15915 "Rose::BinaryAnalysis::ByteOrder::Endianness",
"sex",
"= Rose::BinaryAnalysis::ByteOrder::ORDER_UNSPECIFIED",
15916 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15919#ifndef DOCUMENTATION
15920 AsmGenericFormat.setDataPrototype(
15921 "unsigned",
"version",
"= 0",
15922 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15925#ifndef DOCUMENTATION
15926 AsmGenericFormat.setDataPrototype(
15927 "bool",
"isCurrentVersion",
"= false",
15928 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15931#ifndef DOCUMENTATION
15932 AsmGenericFormat.setDataPrototype(
15933 "SgAsmGenericFormat::ExecABI",
"abi",
"= SgAsmGenericFormat::ABI_UNSPECIFIED",
15934 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15937#ifndef DOCUMENTATION
15938 AsmGenericFormat.setDataPrototype(
15939 "unsigned",
"abiVersion",
"= 0",
15940 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15943#ifndef DOCUMENTATION
15944 AsmGenericFormat.setDataPrototype(
15945 "size_t",
"wordSize",
"= 0",
15946 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
15949 DECLARE_OTHERS(AsmGenericFormat);
15950#if defined(SgAsmGenericFormat_OTHERS) || defined(DOCUMENTATION)
15953#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
15955 friend class boost::serialization::access;
15958 void serialize(S &s,
const unsigned ) {
15961 s & BOOST_SERIALIZATION_NVP(p_family);
15962 s & BOOST_SERIALIZATION_NVP(p_purpose);
15963 s & BOOST_SERIALIZATION_NVP(p_sex);
15964 s & BOOST_SERIALIZATION_NVP(p_version);
15965 s & BOOST_SERIALIZATION_NVP(p_isCurrentVersion);
15966 s & BOOST_SERIALIZATION_NVP(p_abi);
15967 s & BOOST_SERIALIZATION_NVP(p_abiVersion);
15968 s & BOOST_SERIALIZATION_NVP(p_wordSize);
16041 void dump(FILE*,
const char *prefix, ssize_t idx)
const;
16049 unsigned get_abi_version() const ROSE_DEPRECATED("use
get_abiVersion");
16050 void set_abi_version(
unsigned) ROSE_DEPRECATED("use
set_abiVersion");
16051 size_t get_word_size() const ROSE_DEPRECATED("use
get_wordSize");
16052 void set_word_size(
size_t) ROSE_DEPRECATED("use
set_wordSize");
16070#ifdef DOCUMENTATION
16079DECLARE_LEAF_CLASS(AsmGenericFileList);
16080IS_SERIALIZABLE(AsmGenericFileList);
16082#ifndef DOCUMENTATION
16083AsmGenericFileList.useSmallHeader(
true);
16086DECLARE_HEADERS(AsmGenericFileList);
16087#if defined(SgAsmGenericFileList_HEADERS) || defined(DOCUMENTATION)
16088#include <sageContainer.h>
16091#ifdef DOCUMENTATION
16099#ifndef DOCUMENTATION
16100 AsmGenericFileList.setDataPrototype(
16101 "SgAsmGenericFilePtrList",
"files",
"",
16102 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
16105 DECLARE_OTHERS(AsmGenericFileList);
16106#if defined(SgAsmGenericFileList_OTHERS) || defined(DOCUMENTATION)
16109#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
16111 friend class boost::serialization::access;
16114 void serialize(S &s,
const unsigned ) {
16116 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmNode);
16117 s & BOOST_SERIALIZATION_NVP(p_files);
16148#ifdef DOCUMENTATION
16157DECLARE_LEAF_CLASS(AsmGenericFile);
16158IS_SERIALIZABLE(AsmGenericFile);
16160#ifndef DOCUMENTATION
16161AsmGenericFile.useSmallHeader(
true);
16164DECLARE_HEADERS(AsmGenericFile);
16165#if defined(SgAsmGenericFile_HEADERS) || defined(DOCUMENTATION)
16166#include <Rose/BinaryAnalysis/Address.h>
16167#include <Rose/BinaryAnalysis/MemoryMap.h>
16168#include <Rose/BinaryAnalysis/AddressIntervalSet.h>
16170#include "DataConversion.h"
16171#include "StatSerializer.h"
16173#ifdef ROSE_SgAsmGenericFile_IMPL
16174#include <SgAsmDwarfCompilationUnitList.h>
16175#include <SgAsmGenericSectionList.h>
16176#include <SgAsmGenericHeaderList.h>
16179#include <sys/stat.h>
16182#ifdef DOCUMENTATION
16187#ifndef DOCUMENTATION
16188 AsmGenericFile.setDataPrototype(
16189 "SgAsmDwarfCompilationUnitList*",
"dwarfInfo",
"= nullptr",
16190 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
16193#ifndef DOCUMENTATION
16194 AsmGenericFile.setDataPrototype(
16195 "std::string",
"name",
"",
16196 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16199#ifndef DOCUMENTATION
16200 AsmGenericFile.setDataPrototype(
16201 "int",
"fd",
"= -1",
16202 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16205#ifndef DOCUMENTATION
16206 AsmGenericFile.setDataPrototype(
16207 "struct stat",
"sb",
"",
16208 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16211#ifndef DOCUMENTATION
16212 AsmGenericFile.setDataPrototype(
16213 "SgFileContentList",
"data",
"",
16214 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16217#ifndef DOCUMENTATION
16218 AsmGenericFile.setDataPrototype(
16219 "SgAsmGenericHeaderList*",
"headers",
"= createAndParent<SgAsmGenericHeaderList>(this)",
16220 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
16223#ifndef DOCUMENTATION
16224 AsmGenericFile.setDataPrototype(
16225 "SgAsmGenericSectionList*",
"holes",
"= createAndParent<SgAsmGenericSectionList>(this)",
16226 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
16229#ifndef DOCUMENTATION
16230 AsmGenericFile.setDataPrototype(
16231 "bool",
"truncateZeros",
"= false",
16232 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16235#ifndef DOCUMENTATION
16236 AsmGenericFile.setDataPrototype(
16237 "bool",
"trackingReferences",
"= true",
16238 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16241#ifndef DOCUMENTATION
16242 AsmGenericFile.setDataPrototype(
16243 "Rose::BinaryAnalysis::AddressIntervalSet",
"referencedExtents",
"",
16244 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16247#ifndef DOCUMENTATION
16248 AsmGenericFile.setDataPrototype(
16249 "bool",
"neuter",
"= false",
16250 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16253 DECLARE_OTHERS(AsmGenericFile);
16254#if defined(SgAsmGenericFile_OTHERS) || defined(DOCUMENTATION)
16257#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
16259 friend class boost::serialization::access;
16262 void serialize(S &s,
const unsigned ) {
16265 s & BOOST_SERIALIZATION_NVP(p_dwarfInfo);
16266 s & BOOST_SERIALIZATION_NVP(p_name);
16267 s & BOOST_SERIALIZATION_NVP(p_sb);
16268 s & BOOST_SERIALIZATION_NVP(p_data);
16269 s & BOOST_SERIALIZATION_NVP(p_headers);
16270 s & BOOST_SERIALIZATION_NVP(p_holes);
16271 s & BOOST_SERIALIZATION_NVP(p_truncateZeros);
16272 s & BOOST_SERIALIZATION_NVP(p_trackingReferences);
16273 s & BOOST_SERIALIZATION_NVP(p_referencedExtents);
16274 s & BOOST_SERIALIZATION_NVP(p_neuter);
16284 ADDRSP_MEMORY = 0x0001,
16285 ADDRSP_FILE = 0x0002,
16286 ADDRSP_ALL = 0x0003
16327 struct stat const& get_sb()
const;
16680 const
Rose::BinaryAnalysis::AddressIntervalSet& get_referenced_extents() const ROSE_DEPRECATED("use
get_referencedExtents");
16681 void set_referenced_extents(const
Rose::BinaryAnalysis::AddressIntervalSet&) ROSE_DEPRECATED("use
set_referencedExtents");
16682 void extend_to_eof(std::ostream&) const ROSE_DEPRECATED("use
extendToEof");
16683 void dump_all(
bool in_cwd=true, const
char *ext=NULL) ROSE_DEPRECATED("use
dumpAll");
16684 void dump_all(const std::
string& dumpname) ROSE_DEPRECATED("use
dumpAll");
16685 const
Rose::BinaryAnalysis::AddressIntervalSet& get_unreferenced_extents() const
16687 void mark_referenced_extent(
Rose::BinaryAnalysis::Address,
Rose::BinaryAnalysis::Address)
16691 Rose::BinaryAnalysis::Address get_current_size() const ROSE_DEPRECATED("use
get_currentSize");
16693 size_t read_content(
Rose::BinaryAnalysis::Address,
void*,
Rose::BinaryAnalysis::Address,
bool=true)
16695 size_t read_content(const
Rose::BinaryAnalysis::MemoryMap::Ptr&,
Rose::BinaryAnalysis::Address,
void*,
16696 Rose::BinaryAnalysis::Address,
bool=true) ROSE_DEPRECATED("use
readContent");
16697 std::
string read_content_str(const
Rose::BinaryAnalysis::MemoryMap::Ptr&,
Rose::BinaryAnalysis::Address,
bool=true)
16699 std::
string read_content_str(
Rose::BinaryAnalysis::Address,
bool=true) ROSE_DEPRECATED("use
readContentString");
16700 SgAsmGenericSectionPtrList get_mapped_sections() const ROSE_DEPRECATED("use
get_mappedSections");
16701 SgAsmGenericSectionPtrList get_sections_by_id(
int id) const ROSE_DEPRECATED("use
get_sectionById");
16702 SgAsmGenericSectionPtrList get_sections_by_name(std::
string,
char='\0') const ROSE_DEPRECATED("use
get_sectionsByName");
16703 SgAsmGenericSectionPtrList get_sections_by_offset(
Rose::BinaryAnalysis::Address,
Rose::BinaryAnalysis::Address) const
16705 SgAsmGenericSectionPtrList get_sections_by_rva(
Rose::BinaryAnalysis::Address) const ROSE_DEPRECATED("use
get_sectionsByRva");
16706 SgAsmGenericSectionPtrList get_sections_by_va(
Rose::BinaryAnalysis::Address) const ROSE_DEPRECATED("use
get_sectionsByVa");
16708 SgAsmGenericSection *get_section_by_name(const std::
string&,
char=0,
size_t* =
nullptr) const
16718 static
SgAsmGenericSection *best_section_by_va(const SgAsmGenericSectionPtrList&,
Rose::BinaryAnalysis::Address)
16724 Rose::BinaryAnalysis::Address get_next_section_offset(
Rose::BinaryAnalysis::Address)
16728 void fill_holes() ROSE_DEPRECATED("use
fillHoles");
16729 void unfill_holes() ROSE_DEPRECATED("use
unfillHoles");
16732 const
char *format_name() const ROSE_DEPRECATED("use
formatName");
16750#ifdef DOCUMENTATION
16759DECLARE_LEAF_CLASS(AsmGenericDLLList);
16760IS_SERIALIZABLE(AsmGenericDLLList);
16762#ifndef DOCUMENTATION
16763AsmGenericDLLList.useSmallHeader(
true);
16766DECLARE_HEADERS(AsmGenericDLLList);
16767#if defined(SgAsmGenericDLLList_HEADERS) || defined(DOCUMENTATION)
16768#include <sageContainer.h>
16771#ifdef DOCUMENTATION
16779#ifndef DOCUMENTATION
16780 AsmGenericDLLList.setDataPrototype(
16781 "SgAsmGenericDLLPtrList",
"dlls",
"",
16782 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16785 DECLARE_OTHERS(AsmGenericDLLList);
16786#if defined(SgAsmGenericDLLList_OTHERS) || defined(DOCUMENTATION)
16789#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
16791 friend class boost::serialization::access;
16794 void serialize(S &s,
const unsigned ) {
16797 s & BOOST_SERIALIZATION_NVP(p_dlls);
16828#ifdef DOCUMENTATION
16837DECLARE_LEAF_CLASS(AsmGenericDLL);
16838IS_SERIALIZABLE(AsmGenericDLL);
16840#ifndef DOCUMENTATION
16841AsmGenericDLL.useSmallHeader(
true);
16844DECLARE_HEADERS(AsmGenericDLL);
16845#if defined(SgAsmGenericDLL_HEADERS) || defined(DOCUMENTATION)
16846#include <sageContainer.h>
16848#ifdef ROSE_SgAsmGenericDLL_IMPL
16849#include <SgAsmBasicString.h>
16853#ifdef DOCUMENTATION
16858#ifndef DOCUMENTATION
16859 AsmGenericDLL.setDataPrototype(
16860 "SgAsmGenericString*",
"name",
"= createAndParent<SgAsmBasicString>(this)",
16861 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
16864#ifndef DOCUMENTATION
16865 AsmGenericDLL.setDataPrototype(
16866 "SgStringList",
"symbols",
"",
16867 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16870 DECLARE_OTHERS(AsmGenericDLL);
16871#if defined(SgAsmGenericDLL_OTHERS) || defined(DOCUMENTATION)
16874#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
16876 friend class boost::serialization::access;
16879 void serialize(S &s,
const unsigned ) {
16882 s & BOOST_SERIALIZATION_NVP(p_name);
16883 s & BOOST_SERIALIZATION_NVP(p_symbols);
16907 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
16916 void add_symbol(
const std::string&) ROSE_DEPRECATED(
"use addSymbol");
16934#ifdef DOCUMENTATION
16943DECLARE_LEAF_CLASS(AsmFunction);
16944IS_SERIALIZABLE(AsmFunction);
16946#ifndef DOCUMENTATION
16947AsmFunction.useSmallHeader(
true);
16950DECLARE_HEADERS(AsmFunction);
16951#if defined(SgAsmFunction_HEADERS) || defined(DOCUMENTATION)
16952#include <Rose/BinaryAnalysis/Address.h>
16953#include <Rose/BinaryAnalysis/AddressIntervalSet.h>
16954#include <sageContainer.h>
16956#ifdef ROSE_SgAsmFunction_IMPL
16957#include <SgAsmInstruction.h>
16961#ifdef DOCUMENTATION
16980#ifndef DOCUMENTATION
16981 AsmFunction.setDataPrototype(
16982 "std::string",
"name",
"",
16983 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16986#ifndef DOCUMENTATION
16987 AsmFunction.setDataPrototype(
16988 "unsigned",
"reason",
"= SgAsmFunction::FUNC_NONE",
16989 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16992#ifndef DOCUMENTATION
16993 AsmFunction.setDataPrototype(
16994 "std::string",
"reasonComment",
"",
16995 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
16998#ifndef DOCUMENTATION
16999 AsmFunction.setDataPrototype(
17000 "SgAsmFunction::function_kind_enum",
"functionKind",
"= SgAsmFunction::e_unknown",
17001 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17004#ifndef DOCUMENTATION
17005 AsmFunction.setDataPrototype(
17006 "SgAsmFunction::MayReturn",
"mayReturn",
"= SgAsmFunction::RET_UNKNOWN",
17007 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17010#ifndef DOCUMENTATION
17011 AsmFunction.setDataPrototype(
17012 "std::string",
"nameMd5",
"",
17013 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17016#ifndef DOCUMENTATION
17017 AsmFunction.setDataPrototype(
17018 "SgAsmStatementPtrList",
"statementList",
"",
17019 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
17022#ifndef DOCUMENTATION
17023 AsmFunction.setDataPrototype(
17024 "SgAsmStatementPtrList",
"dest",
"",
17025 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17028#ifndef DOCUMENTATION
17029 AsmFunction.setDataPrototype(
17030 "Rose::BinaryAnalysis::Address",
"entryVa",
"= 0",
17031 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17034#ifndef DOCUMENTATION
17035 AsmFunction.setDataPrototype(
17036 "SgSymbolTable*",
"symbolTable",
"= nullptr",
17037 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17040#ifndef DOCUMENTATION
17041 AsmFunction.setDataPrototype(
17042 "size_t",
"cachedVertex",
"= (size_t)(-1)",
17043 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17046#ifndef DOCUMENTATION
17047 AsmFunction.setDataPrototype(
17048 "int64_t",
"stackDelta",
"= SgAsmInstruction::INVALID_STACK_DELTA",
17049 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17052#ifndef DOCUMENTATION
17053 AsmFunction.setDataPrototype(
17054 "std::string",
"callingConvention",
"",
17055 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17058 DECLARE_OTHERS(AsmFunction);
17059#if defined(SgAsmFunction_OTHERS) || defined(DOCUMENTATION)
17062#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
17064 friend class boost::serialization::access;
17067 void serialize(S &s,
const unsigned ) {
17070 s & BOOST_SERIALIZATION_NVP(p_name);
17071 s & BOOST_SERIALIZATION_NVP(p_reason);
17072 s & BOOST_SERIALIZATION_NVP(p_reasonComment);
17073 s & BOOST_SERIALIZATION_NVP(p_functionKind);
17074 s & BOOST_SERIALIZATION_NVP(p_mayReturn);
17075 s & BOOST_SERIALIZATION_NVP(p_nameMd5);
17076 s & BOOST_SERIALIZATION_NVP(p_statementList);
17077 s & BOOST_SERIALIZATION_NVP(p_dest);
17078 s & BOOST_SERIALIZATION_NVP(p_entryVa);
17079 s & BOOST_SERIALIZATION_NVP(p_cachedVertex);
17080 s & BOOST_SERIALIZATION_NVP(p_stackDelta);
17081 s & BOOST_SERIALIZATION_NVP(p_callingConvention);
17273 SgAsmStatementPtrList
const& get_dest()
const;
17274 void set_dest(SgAsmStatementPtrList
const&);
17299 size_t const& get_cachedVertex()
const;
17300 void set_cachedVertex(
size_t const&);
17363 virtual bool operator()(
SgNode*) = 0;
17423 const std::
string& get_name_md5() const ROSE_DEPRECATED("use
get_nameMd5");
17424 void set_name_md5(const std::
string&) ROSE_DEPRECATED("use
set_nameMd5");
17425 Rose::BinaryAnalysis::Address get_entry_va() const ROSE_DEPRECATED("use
get_entryVa");
17426 void set_entry_va(
Rose::BinaryAnalysis::Address) ROSE_DEPRECATED("use
set_entryVa");
17429 size_t get_cached_vertex() const ROSE_DEPRECATED("use get_cachedVertex");
17430 void set_cached_vertex(
size_t) ROSE_DEPRECATED("use set_cachedVertex");
17434 static std::
string reason_key(const std::
string &prefix="") ROSE_DEPRECATED("use
reasonKey");
17435 std::
string reason_str(
bool) const ROSE_DEPRECATED("use
reasonString");
17436 static std::
string reason_str(
bool,
unsigned) ROSE_DEPRECATED("use
reasonString");
17448 std::
string const& name,
17449 unsigned const& reason,
17461#ifdef DOCUMENTATION
17470#ifndef DOCUMENTATION
17471AstNodeClass& AsmSynthesizedDeclaration = nonTerminalConstructor(
17472 "AsmSynthesizedDeclaration",
17474 "AsmSynthesizedDeclaration",
17475 "AsmSynthesizedDeclarationTag",
17476 SubclassListBuilder()
17478 | AsmSynthesizedDataStructureDeclaration
17479 | AsmSynthesizedFieldDeclaration
17481assert(AsmSynthesizedDeclaration.associatedGrammar !=
nullptr);
17482AsmSynthesizedDeclaration.setCppCondition(
"!defined(DOCUMENTATION)");
17483AsmSynthesizedDeclaration.isBoostSerializable(
true);
17484AsmSynthesizedDeclaration.setAutomaticGenerationOfConstructor(
false);
17485AsmSynthesizedDeclaration.setAutomaticGenerationOfDestructor(
false);
17488#ifndef DOCUMENTATION
17489AsmSynthesizedDeclaration.useSmallHeader(
true);
17492#ifdef DOCUMENTATION
17502 DECLARE_OTHERS(AsmSynthesizedDeclaration);
17503#if defined(SgAsmSynthesizedDeclaration_OTHERS) || defined(DOCUMENTATION)
17506#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
17508 friend class boost::serialization::access;
17511 void serialize(S &s,
const unsigned ) {
17539#ifdef DOCUMENTATION
17548DECLARE_LEAF_CLASS(AsmFloatValueExpression);
17549IS_SERIALIZABLE(AsmFloatValueExpression);
17551#ifndef DOCUMENTATION
17552AsmFloatValueExpression.useSmallHeader(
true);
17555#ifdef DOCUMENTATION
17563 DECLARE_OTHERS(AsmFloatValueExpression);
17564#if defined(SgAsmFloatValueExpression_OTHERS) || defined(DOCUMENTATION)
17567#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
17569 friend class boost::serialization::access;
17572 void serialize(S &s,
const unsigned ) {
17575 s & BOOST_SERIALIZATION_NVP(p_nativeValue);
17576 s & BOOST_SERIALIZATION_NVP(p_nativeValueIsValid);
17589 mutable double p_nativeValue;
17594 mutable bool p_nativeValueIsValid;
17649#ifdef DOCUMENTATION
17658DECLARE_LEAF_CLASS(AsmFloatType);
17659IS_SERIALIZABLE(AsmFloatType);
17661#ifndef DOCUMENTATION
17662AsmFloatType.useSmallHeader(
true);
17665DECLARE_HEADERS(AsmFloatType);
17666#if defined(SgAsmFloatType_HEADERS) || defined(DOCUMENTATION)
17667#include <Sawyer/BitVector.h>
17668#include <Rose/BitFlags.h>
17669#include <Rose/BinaryAnalysis/ByteOrder.h>
17672#ifdef DOCUMENTATION
17677#ifndef DOCUMENTATION
17678 AsmFloatType.setDataPrototype(
17679 "size_t",
"significandOffset",
"= (size_t)(-1)",
17680 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17683#ifndef DOCUMENTATION
17684 AsmFloatType.setDataPrototype(
17685 "size_t",
"significandNBits",
"= (size_t)(-1)",
17686 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17689#ifndef DOCUMENTATION
17690 AsmFloatType.setDataPrototype(
17691 "size_t",
"signBitOffset",
"= (size_t)(-1)",
17692 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17695#ifndef DOCUMENTATION
17696 AsmFloatType.setDataPrototype(
17697 "size_t",
"exponentOffset",
"= (size_t)(-1)",
17698 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17701#ifndef DOCUMENTATION
17702 AsmFloatType.setDataPrototype(
17703 "size_t",
"exponentNBits",
"= (size_t)(-1)",
17704 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17707#ifndef DOCUMENTATION
17708 AsmFloatType.setDataPrototype(
17709 "uint64_t",
"exponentBias",
"= 0",
17710 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17713#ifndef DOCUMENTATION
17714 AsmFloatType.setDataPrototype(
17715 "unsigned",
"flags",
"= 0",
17716 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17719 DECLARE_OTHERS(AsmFloatType);
17720#if defined(SgAsmFloatType_OTHERS) || defined(DOCUMENTATION)
17723#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
17725 friend class boost::serialization::access;
17728 void serialize(S &s,
const unsigned ) {
17731 s & BOOST_SERIALIZATION_NVP(p_significandOffset);
17732 s & BOOST_SERIALIZATION_NVP(p_significandNBits);
17733 s & BOOST_SERIALIZATION_NVP(p_signBitOffset);
17734 s & BOOST_SERIALIZATION_NVP(p_exponentOffset);
17735 s & BOOST_SERIALIZATION_NVP(p_exponentNBits);
17736 s & BOOST_SERIALIZATION_NVP(p_exponentBias);
17737 s & BOOST_SERIALIZATION_NVP(p_flags);
17836#ifdef DOCUMENTATION
17845#ifndef DOCUMENTATION
17846AstNodeClass& AsmScalarType = nonTerminalConstructor(
17850 "AsmScalarTypeTag",
17851 SubclassListBuilder()
17856assert(AsmScalarType.associatedGrammar !=
nullptr);
17857AsmScalarType.setCppCondition(
"!defined(DOCUMENTATION)");
17858AsmScalarType.isBoostSerializable(
true);
17859AsmScalarType.setAutomaticGenerationOfConstructor(
false);
17860AsmScalarType.setAutomaticGenerationOfDestructor(
false);
17863#ifndef DOCUMENTATION
17864AsmScalarType.useSmallHeader(
true);
17867DECLARE_HEADERS(AsmScalarType);
17868#if defined(SgAsmScalarType_HEADERS) || defined(DOCUMENTATION)
17869#include <Rose/BinaryAnalysis/ByteOrder.h>
17872#ifdef DOCUMENTATION
17877#ifndef DOCUMENTATION
17878 AsmScalarType.setDataPrototype(
17879 "Rose::BinaryAnalysis::ByteOrder::Endianness",
"minorOrder",
"= Rose::BinaryAnalysis::ByteOrder::ORDER_UNSPECIFIED",
17880 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17883#ifndef DOCUMENTATION
17884 AsmScalarType.setDataPrototype(
17885 "Rose::BinaryAnalysis::ByteOrder::Endianness",
"majorOrder",
"= Rose::BinaryAnalysis::ByteOrder::ORDER_UNSPECIFIED",
17886 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17889#ifndef DOCUMENTATION
17890 AsmScalarType.setDataPrototype(
17891 "size_t",
"majorNBytes",
"= 0",
17892 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17895#ifndef DOCUMENTATION
17896 AsmScalarType.setDataPrototype(
17897 "size_t",
"nBits",
"= 0",
17898 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
17901 DECLARE_OTHERS(AsmScalarType);
17902#if defined(SgAsmScalarType_OTHERS) || defined(DOCUMENTATION)
17905#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
17907 friend class boost::serialization::access;
17910 void serialize(S &s,
const unsigned ) {
17912 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmType);
17913 s & BOOST_SERIALIZATION_NVP(p_minorOrder);
17914 s & BOOST_SERIALIZATION_NVP(p_majorOrder);
17915 s & BOOST_SERIALIZATION_NVP(p_majorNBytes);
17916 s & BOOST_SERIALIZATION_NVP(p_nBits);
17980#ifdef DOCUMENTATION
17989#ifndef DOCUMENTATION
17990AstNodeClass& AsmType = nonTerminalConstructor(
17995 SubclassListBuilder()
18000assert(AsmType.associatedGrammar !=
nullptr);
18001AsmType.setCppCondition(
"!defined(DOCUMENTATION)");
18002AsmType.isBoostSerializable(
true);
18003AsmType.setAutomaticGenerationOfConstructor(
false);
18004AsmType.setAutomaticGenerationOfDestructor(
false);
18007#ifndef DOCUMENTATION
18008AsmType.useSmallHeader(
true);
18011#ifdef DOCUMENTATION
18016 DECLARE_OTHERS(AsmType);
18017#if defined(SgAsmType_OTHERS) || defined(DOCUMENTATION)
18020#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
18022 friend class boost::serialization::access;
18025 void serialize(S &s,
const unsigned ) {
18027 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmNode);
18068 template<
class Type>
18070 ASSERT_not_null(toInsert);
18071 std::string key = toInsert->toString();
18072 Type *retval =
dynamic_cast<Type*
>(p_typeRegistry.
insertMaybe(key, toInsert));
18073 ASSERT_not_null(retval);
18074 if (retval!=toInsert)
18095#ifdef DOCUMENTATION
18104DECLARE_LEAF_CLASS(AsmExprListExp);
18105IS_SERIALIZABLE(AsmExprListExp);
18107#ifndef DOCUMENTATION
18108AsmExprListExp.useSmallHeader(
true);
18111DECLARE_HEADERS(AsmExprListExp);
18112#if defined(SgAsmExprListExp_HEADERS) || defined(DOCUMENTATION)
18113#include <sageContainer.h>
18116#ifdef DOCUMENTATION
18121#ifndef DOCUMENTATION
18122 AsmExprListExp.setDataPrototype(
18123 "SgAsmExpressionPtrList",
"expressions",
"",
18124 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
18127 DECLARE_OTHERS(AsmExprListExp);
18128#if defined(SgAsmExprListExp_OTHERS) || defined(DOCUMENTATION)
18131#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
18133 friend class boost::serialization::access;
18136 void serialize(S &s,
const unsigned ) {
18139 s & BOOST_SERIALIZATION_NVP(p_expressions);
18173#ifdef DOCUMENTATION
18182DECLARE_LEAF_CLASS(AsmElfSymverSection);
18183IS_SERIALIZABLE(AsmElfSymverSection);
18185#ifndef DOCUMENTATION
18186AsmElfSymverSection.useSmallHeader(
true);
18189DECLARE_HEADERS(AsmElfSymverSection);
18190#if defined(SgAsmElfSymverSection_HEADERS) || defined(DOCUMENTATION)
18191#include <Rose/BinaryAnalysis/Address.h>
18193#ifdef ROSE_SgAsmElfSymverSection_IMPL
18194#include <SgAsmElfSymverEntryList.h>
18198#ifdef DOCUMENTATION
18206#ifndef DOCUMENTATION
18207 AsmElfSymverSection.setDataPrototype(
18208 "SgAsmElfSymverEntryList*",
"entries",
"= createAndParent<SgAsmElfSymverEntryList>(this)",
18209 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
18212 DECLARE_OTHERS(AsmElfSymverSection);
18213#if defined(SgAsmElfSymverSection_OTHERS) || defined(DOCUMENTATION)
18216#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
18218 friend class boost::serialization::access;
18221 void serialize(S &s,
const unsigned ) {
18224 s & BOOST_SERIALIZATION_NVP(p_entries);
18251 calculateSizes(
size_t *total,
size_t *required,
size_t *optional,
size_t *nentries)
const override;
18257 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
18263 using SgAsmElfSection::calculate_sizes;
18265 ROSE_DEPRECATED(
"use calculateSizes");
18283#ifdef DOCUMENTATION
18292DECLARE_LEAF_CLASS(AsmElfSymverNeededSection);
18293IS_SERIALIZABLE(AsmElfSymverNeededSection);
18295#ifndef DOCUMENTATION
18296AsmElfSymverNeededSection.useSmallHeader(
true);
18299DECLARE_HEADERS(AsmElfSymverNeededSection);
18300#if defined(SgAsmElfSymverNeededSection_HEADERS) || defined(DOCUMENTATION)
18301#include <Rose/BinaryAnalysis/Address.h>
18303#ifdef ROSE_SgAsmElfSymverNeededSection_IMPL
18304#include <SgAsmElfSymverNeededEntryList.h>
18308#ifdef DOCUMENTATION
18317#ifndef DOCUMENTATION
18318 AsmElfSymverNeededSection.setDataPrototype(
18319 "SgAsmElfSymverNeededEntryList*",
"entries",
"= createAndParent<SgAsmElfSymverNeededEntryList>(this)",
18320 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
18323 DECLARE_OTHERS(AsmElfSymverNeededSection);
18324#if defined(SgAsmElfSymverNeededSection_OTHERS) || defined(DOCUMENTATION)
18327#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
18329 friend class boost::serialization::access;
18332 void serialize(S &s,
const unsigned ) {
18335 s & BOOST_SERIALIZATION_NVP(p_entries);
18367 using SgAsmElfSection::calculate_sizes;
18372 calculateSizes(
size_t *total,
size_t *required,
size_t *optional,
size_t *nentries)
const override;
18380 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
18387 ROSE_DEPRECATED(
"use calculateSizes");
18405#ifdef DOCUMENTATION
18414DECLARE_LEAF_CLASS(AsmElfSymverNeededEntryList);
18415IS_SERIALIZABLE(AsmElfSymverNeededEntryList);
18417#ifndef DOCUMENTATION
18418AsmElfSymverNeededEntryList.useSmallHeader(
true);
18421DECLARE_HEADERS(AsmElfSymverNeededEntryList);
18422#if defined(SgAsmElfSymverNeededEntryList_HEADERS) || defined(DOCUMENTATION)
18423#include <sageContainer.h>
18426#ifdef DOCUMENTATION
18434#ifndef DOCUMENTATION
18435 AsmElfSymverNeededEntryList.setDataPrototype(
18436 "SgAsmElfSymverNeededEntryPtrList",
"entries",
"",
18437 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
18440 DECLARE_OTHERS(AsmElfSymverNeededEntryList);
18441#if defined(SgAsmElfSymverNeededEntryList_OTHERS) || defined(DOCUMENTATION)
18444#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
18446 friend class boost::serialization::access;
18449 void serialize(S &s,
const unsigned ) {
18452 s & BOOST_SERIALIZATION_NVP(p_entries);
18483#ifdef DOCUMENTATION
18492DECLARE_LEAF_CLASS(AsmElfSymverNeededEntry);
18493IS_SERIALIZABLE(AsmElfSymverNeededEntry);
18495#ifndef DOCUMENTATION
18496AsmElfSymverNeededEntry.useSmallHeader(
true);
18499DECLARE_HEADERS(AsmElfSymverNeededEntry);
18500#if defined(SgAsmElfSymverNeededEntry_HEADERS) || defined(DOCUMENTATION)
18501#include <Rose/BinaryAnalysis/ByteOrder.h>
18503#ifdef ROSE_SgAsmElfSymverNeededEntry_IMPL
18504#include <SgAsmElfSymverNeededAuxList.h>
18505#include <SgAsmGenericString.h>
18509#ifdef DOCUMENTATION
18514#ifndef DOCUMENTATION
18515 AsmElfSymverNeededEntry.setDataPrototype(
18516 "size_t",
"version",
"= 0",
18517 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
18520#ifndef DOCUMENTATION
18521 AsmElfSymverNeededEntry.setDataPrototype(
18522 "SgAsmGenericString*",
"fileName",
"= nullptr",
18523 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
18526#ifndef DOCUMENTATION
18527 AsmElfSymverNeededEntry.setDataPrototype(
18528 "SgAsmElfSymverNeededAuxList*",
"entries",
"= createAndParent<SgAsmElfSymverNeededAuxList>(this)",
18529 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
18532 DECLARE_OTHERS(AsmElfSymverNeededEntry);
18533#if defined(SgAsmElfSymverNeededEntry_OTHERS) || defined(DOCUMENTATION)
18536#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
18538 friend class boost::serialization::access;
18541 void serialize(S &s,
const unsigned ) {
18544 s & BOOST_SERIALIZATION_NVP(p_version);
18545 s & BOOST_SERIALIZATION_NVP(p_fileName);
18546 s & BOOST_SERIALIZATION_NVP(p_entries);
18566#if !defined(SWIG) && !defined(_MSC_VER)
18567 __attribute__((packed))
18621 virtual void dump(FILE *f,
const char *prefix, ssize_t idx)
const;
18646#ifdef DOCUMENTATION
18655DECLARE_LEAF_CLASS(AsmElfSymverNeededAuxList);
18656IS_SERIALIZABLE(AsmElfSymverNeededAuxList);
18658#ifndef DOCUMENTATION
18659AsmElfSymverNeededAuxList.useSmallHeader(
true);
18662DECLARE_HEADERS(AsmElfSymverNeededAuxList);
18663#if defined(SgAsmElfSymverNeededAuxList_HEADERS) || defined(DOCUMENTATION)
18664#include <sageContainer.h>
18667#ifdef DOCUMENTATION
18675#ifndef DOCUMENTATION
18676 AsmElfSymverNeededAuxList.setDataPrototype(
18677 "SgAsmElfSymverNeededAuxPtrList",
"entries",
"",
18678 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
18681 DECLARE_OTHERS(AsmElfSymverNeededAuxList);
18682#if defined(SgAsmElfSymverNeededAuxList_OTHERS) || defined(DOCUMENTATION)
18685#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
18687 friend class boost::serialization::access;
18690 void serialize(S &s,
const unsigned ) {
18693 s & BOOST_SERIALIZATION_NVP(p_entries);
18724#ifdef DOCUMENTATION
18733DECLARE_LEAF_CLASS(AsmElfSymverNeededAux);
18734IS_SERIALIZABLE(AsmElfSymverNeededAux);
18736#ifndef DOCUMENTATION
18737AsmElfSymverNeededAux.useSmallHeader(
true);
18740DECLARE_HEADERS(AsmElfSymverNeededAux);
18741#if defined(SgAsmElfSymverNeededAux_HEADERS) || defined(DOCUMENTATION)
18742#include <Rose/BinaryAnalysis/ByteOrder.h>
18744#ifdef ROSE_SgAsmElfSymverNeededAux_IMPL
18745#include <SgAsmGenericString.h>
18749#ifdef DOCUMENTATION
18754#ifndef DOCUMENTATION
18755 AsmElfSymverNeededAux.setDataPrototype(
18756 "uint32_t",
"hash",
"= 0",
18757 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
18760#ifndef DOCUMENTATION
18761 AsmElfSymverNeededAux.setDataPrototype(
18762 "int",
"flags",
"= 0",
18763 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
18766#ifndef DOCUMENTATION
18767 AsmElfSymverNeededAux.setDataPrototype(
18768 "size_t",
"other",
"= 0",
18769 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
18772#ifndef DOCUMENTATION
18773 AsmElfSymverNeededAux.setDataPrototype(
18774 "SgAsmGenericString*",
"name",
"= 0",
18775 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
18778 DECLARE_OTHERS(AsmElfSymverNeededAux);
18779#if defined(SgAsmElfSymverNeededAux_OTHERS) || defined(DOCUMENTATION)
18782#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
18784 friend class boost::serialization::access;
18787 void serialize(S &s,
const unsigned ) {
18790 s & BOOST_SERIALIZATION_NVP(p_hash);
18791 s & BOOST_SERIALIZATION_NVP(p_flags);
18792 s & BOOST_SERIALIZATION_NVP(p_other);
18793 s & BOOST_SERIALIZATION_NVP(p_name);
18813#if !defined(SWIG) && !defined(_MSC_VER)
18814 __attribute__((packed))
18884 virtual void dump(FILE *f,
const char *prefix, ssize_t idx)
const;
18902#ifdef DOCUMENTATION
18911DECLARE_LEAF_CLASS(AsmElfSymverEntryList);
18912IS_SERIALIZABLE(AsmElfSymverEntryList);
18914#ifndef DOCUMENTATION
18915AsmElfSymverEntryList.useSmallHeader(
true);
18918DECLARE_HEADERS(AsmElfSymverEntryList);
18919#if defined(SgAsmElfSymverEntryList_HEADERS) || defined(DOCUMENTATION)
18920#include <sageContainer.h>
18923#ifdef DOCUMENTATION
18931#ifndef DOCUMENTATION
18932 AsmElfSymverEntryList.setDataPrototype(
18933 "SgAsmElfSymverEntryPtrList",
"entries",
"",
18934 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
18937 DECLARE_OTHERS(AsmElfSymverEntryList);
18938#if defined(SgAsmElfSymverEntryList_OTHERS) || defined(DOCUMENTATION)
18941#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
18943 friend class boost::serialization::access;
18946 void serialize(S &s,
const unsigned ) {
18949 s & BOOST_SERIALIZATION_NVP(p_entries);
18980#ifdef DOCUMENTATION
18989DECLARE_LEAF_CLASS(AsmElfSymverEntry);
18990IS_SERIALIZABLE(AsmElfSymverEntry);
18992#ifndef DOCUMENTATION
18993AsmElfSymverEntry.useSmallHeader(
true);
18996#ifdef DOCUMENTATION
19001#ifndef DOCUMENTATION
19002 AsmElfSymverEntry.setDataPrototype(
19003 "size_t",
"value",
"= 0",
19004 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
19007 DECLARE_OTHERS(AsmElfSymverEntry);
19008#if defined(SgAsmElfSymverEntry_OTHERS) || defined(DOCUMENTATION)
19011#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
19013 friend class boost::serialization::access;
19016 void serialize(S &s,
const unsigned ) {
19019 s & BOOST_SERIALIZATION_NVP(p_value);
19038 virtual void dump(FILE *f,
const char *prefix, ssize_t idx)
const;
19056#ifdef DOCUMENTATION
19065DECLARE_LEAF_CLASS(AsmElfSymverDefinedSection);
19066IS_SERIALIZABLE(AsmElfSymverDefinedSection);
19068#ifndef DOCUMENTATION
19069AsmElfSymverDefinedSection.useSmallHeader(
true);
19072DECLARE_HEADERS(AsmElfSymverDefinedSection);
19073#if defined(SgAsmElfSymverDefinedSection_HEADERS) || defined(DOCUMENTATION)
19074#include <Rose/BinaryAnalysis/Address.h>
19076#ifdef ROSE_SgAsmElfSymverDefinedSection_IMPL
19077#include <SgAsmElfSymverDefinedEntryList.h>
19081#ifdef DOCUMENTATION
19090#ifndef DOCUMENTATION
19091 AsmElfSymverDefinedSection.setDataPrototype(
19092 "SgAsmElfSymverDefinedEntryList*",
"entries",
"= createAndParent<SgAsmElfSymverDefinedEntryList>(this)",
19093 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
19096 DECLARE_OTHERS(AsmElfSymverDefinedSection);
19097#if defined(SgAsmElfSymverDefinedSection_OTHERS) || defined(DOCUMENTATION)
19100#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
19102 friend class boost::serialization::access;
19105 void serialize(S &s,
const unsigned ) {
19108 s & BOOST_SERIALIZATION_NVP(p_entries);
19200 calculateSizes(
size_t *total,
size_t *required,
size_t *optional,
size_t *nentries)
const override;
19208 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
19214 using SgAsmElfSection::calculate_sizes;
19216 ROSE_DEPRECATED(
"use calculateSizes");
19234#ifdef DOCUMENTATION
19243DECLARE_LEAF_CLASS(AsmElfSymverDefinedEntryList);
19244IS_SERIALIZABLE(AsmElfSymverDefinedEntryList);
19246#ifndef DOCUMENTATION
19247AsmElfSymverDefinedEntryList.useSmallHeader(
true);
19250DECLARE_HEADERS(AsmElfSymverDefinedEntryList);
19251#if defined(SgAsmElfSymverDefinedEntryList_HEADERS) || defined(DOCUMENTATION)
19252#include <sageContainer.h>
19255#ifdef DOCUMENTATION
19263#ifndef DOCUMENTATION
19264 AsmElfSymverDefinedEntryList.setDataPrototype(
19265 "SgAsmElfSymverDefinedEntryPtrList",
"entries",
"",
19266 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
19269 DECLARE_OTHERS(AsmElfSymverDefinedEntryList);
19270#if defined(SgAsmElfSymverDefinedEntryList_OTHERS) || defined(DOCUMENTATION)
19273#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
19275 friend class boost::serialization::access;
19278 void serialize(S &s,
const unsigned ) {
19281 s & BOOST_SERIALIZATION_NVP(p_entries);
19312#ifdef DOCUMENTATION
19321DECLARE_LEAF_CLASS(AsmElfSymverDefinedEntry);
19322IS_SERIALIZABLE(AsmElfSymverDefinedEntry);
19324#ifndef DOCUMENTATION
19325AsmElfSymverDefinedEntry.useSmallHeader(
true);
19328DECLARE_HEADERS(AsmElfSymverDefinedEntry);
19329#if defined(SgAsmElfSymverDefinedEntry_HEADERS) || defined(DOCUMENTATION)
19330#include <Rose/BinaryAnalysis/ByteOrder.h>
19332#ifdef ROSE_SgAsmElfSymverDefinedEntry_IMPL
19333#include <SgAsmElfSymverDefinedAuxList.h>
19337#ifdef DOCUMENTATION
19342#ifndef DOCUMENTATION
19343 AsmElfSymverDefinedEntry.setDataPrototype(
19344 "size_t",
"version",
"= 0",
19345 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
19348#ifndef DOCUMENTATION
19349 AsmElfSymverDefinedEntry.setDataPrototype(
19350 "int",
"flags",
"= 0",
19351 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
19354#ifndef DOCUMENTATION
19355 AsmElfSymverDefinedEntry.setDataPrototype(
19356 "size_t",
"index",
"= 0",
19357 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
19360#ifndef DOCUMENTATION
19361 AsmElfSymverDefinedEntry.setDataPrototype(
19362 "uint32_t",
"hash",
"= 0",
19363 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
19366#ifndef DOCUMENTATION
19367 AsmElfSymverDefinedEntry.setDataPrototype(
19368 "SgAsmElfSymverDefinedAuxList*",
"entries",
"= createAndParent<SgAsmElfSymverDefinedAuxList>(this)",
19369 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
19372 DECLARE_OTHERS(AsmElfSymverDefinedEntry);
19373#if defined(SgAsmElfSymverDefinedEntry_OTHERS) || defined(DOCUMENTATION)
19376#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
19378 friend class boost::serialization::access;
19381 void serialize(S &s,
const unsigned ) {
19384 s & BOOST_SERIALIZATION_NVP(p_version);
19385 s & BOOST_SERIALIZATION_NVP(p_flags);
19386 s & BOOST_SERIALIZATION_NVP(p_index);
19387 s & BOOST_SERIALIZATION_NVP(p_hash);
19388 s & BOOST_SERIALIZATION_NVP(p_entries);
19409#if !defined(SWIG) && !defined(_MSC_VER)
19410 __attribute__((packed))
19486 virtual void dump(FILE *f,
const char *prefix, ssize_t idx)
const;
19504#ifdef DOCUMENTATION
19513DECLARE_LEAF_CLASS(AsmElfSymverDefinedAuxList);
19514IS_SERIALIZABLE(AsmElfSymverDefinedAuxList);
19516#ifndef DOCUMENTATION
19517AsmElfSymverDefinedAuxList.useSmallHeader(
true);
19520DECLARE_HEADERS(AsmElfSymverDefinedAuxList);
19521#if defined(SgAsmElfSymverDefinedAuxList_HEADERS) || defined(DOCUMENTATION)
19522#include <sageContainer.h>
19525#ifdef DOCUMENTATION
19533#ifndef DOCUMENTATION
19534 AsmElfSymverDefinedAuxList.setDataPrototype(
19535 "SgAsmElfSymverDefinedAuxPtrList",
"entries",
"",
19536 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
19539 DECLARE_OTHERS(AsmElfSymverDefinedAuxList);
19540#if defined(SgAsmElfSymverDefinedAuxList_OTHERS) || defined(DOCUMENTATION)
19543#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
19545 friend class boost::serialization::access;
19548 void serialize(S &s,
const unsigned ) {
19551 s & BOOST_SERIALIZATION_NVP(p_entries);
19582#ifdef DOCUMENTATION
19591DECLARE_LEAF_CLASS(AsmElfSymverDefinedAux);
19592IS_SERIALIZABLE(AsmElfSymverDefinedAux);
19594#ifndef DOCUMENTATION
19595AsmElfSymverDefinedAux.useSmallHeader(
true);
19598DECLARE_HEADERS(AsmElfSymverDefinedAux);
19599#if defined(SgAsmElfSymverDefinedAux_HEADERS) || defined(DOCUMENTATION)
19600#include <Rose/BinaryAnalysis/ByteOrder.h>
19602#ifdef ROSE_SgAsmElfSymverDefinedAux_IMPL
19603#include <SgAsmGenericString.h>
19607#ifdef DOCUMENTATION
19612#ifndef DOCUMENTATION
19613 AsmElfSymverDefinedAux.setDataPrototype(
19614 "SgAsmGenericString*",
"name",
"= 0",
19615 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
19618 DECLARE_OTHERS(AsmElfSymverDefinedAux);
19619#if defined(SgAsmElfSymverDefinedAux_OTHERS) || defined(DOCUMENTATION)
19622#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
19624 friend class boost::serialization::access;
19627 void serialize(S &s,
const unsigned ) {
19630 s & BOOST_SERIALIZATION_NVP(p_name);
19647#if !defined(SWIG) && !defined(_MSC_VER)
19648 __attribute__((packed))
19687 virtual void dump(FILE *f,
const char *prefix, ssize_t idx)
const;
19705#ifdef DOCUMENTATION
19714DECLARE_LEAF_CLASS(AsmElfSymbolSection);
19715IS_SERIALIZABLE(AsmElfSymbolSection);
19717#ifndef DOCUMENTATION
19718AsmElfSymbolSection.useSmallHeader(
true);
19721DECLARE_HEADERS(AsmElfSymbolSection);
19722#if defined(SgAsmElfSymbolSection_HEADERS) || defined(DOCUMENTATION)
19723#include <Rose/BinaryAnalysis/Address.h>
19725#ifdef ROSE_SgAsmElfSymbolSection_IMPL
19726#include <SgAsmElfSymbolList.h>
19730#ifdef DOCUMENTATION
19735#ifndef DOCUMENTATION
19736 AsmElfSymbolSection.setDataPrototype(
19737 "bool",
"isDynamic",
"= false",
19738 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
19741#ifndef DOCUMENTATION
19742 AsmElfSymbolSection.setDataPrototype(
19743 "SgAsmElfSymbolList*",
"symbols",
"= createAndParent<SgAsmElfSymbolList>(this)",
19744 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
19747 DECLARE_OTHERS(AsmElfSymbolSection);
19748#if defined(SgAsmElfSymbolSection_OTHERS) || defined(DOCUMENTATION)
19751#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
19753 friend class boost::serialization::access;
19756 void serialize(S &s,
const unsigned ) {
19759 s & BOOST_SERIALIZATION_NVP(p_isDynamic);
19760 s & BOOST_SERIALIZATION_NVP(p_symbols);
19812 calculateSizes(
size_t *total,
size_t *required,
size_t *optional,
size_t *nentries)
const override;
19823 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
19829 bool get_is_dynamic() const ROSE_DEPRECATED("use
get_isDynamic");
19830 void set_is_dynamic(
bool) ROSE_DEPRECATED("use
set_isDynamic");
19831 virtual
void finish_parsing() override ROSE_DEPRECATED("use
finishParsing");
19834 virtual
Rose::BinaryAnalysis::Address calculate_sizes(
size_t*,
size_t*,
size_t*,
size_t*) const override
19853#ifdef DOCUMENTATION
19862DECLARE_LEAF_CLASS(AsmElfSymbolList);
19863IS_SERIALIZABLE(AsmElfSymbolList);
19865#ifndef DOCUMENTATION
19866AsmElfSymbolList.useSmallHeader(
true);
19869DECLARE_HEADERS(AsmElfSymbolList);
19870#if defined(SgAsmElfSymbolList_HEADERS) || defined(DOCUMENTATION)
19871#include <sageContainer.h>
19874#ifdef DOCUMENTATION
19878#ifndef DOCUMENTATION
19879 AsmElfSymbolList.setDataPrototype(
19880 "SgAsmElfSymbolPtrList",
"symbols",
"",
19881 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
19884 DECLARE_OTHERS(AsmElfSymbolList);
19885#if defined(SgAsmElfSymbolList_OTHERS) || defined(DOCUMENTATION)
19888#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
19890 friend class boost::serialization::access;
19893 void serialize(S &s,
const unsigned ) {
19896 s & BOOST_SERIALIZATION_NVP(p_symbols);
19930#ifdef DOCUMENTATION
19939DECLARE_LEAF_CLASS(AsmElfSymbol);
19940IS_SERIALIZABLE(AsmElfSymbol);
19942#ifndef DOCUMENTATION
19943AsmElfSymbol.useSmallHeader(
true);
19946DECLARE_HEADERS(AsmElfSymbol);
19947#if defined(SgAsmElfSymbol_HEADERS) || defined(DOCUMENTATION)
19948#include <Rose/BinaryAnalysis/Address.h>
19949#include <Rose/BinaryAnalysis/ByteOrder.h>
19950#include <sageContainer.h>
19953#ifdef DOCUMENTATION
19961#ifndef DOCUMENTATION
19962 AsmElfSymbol.setDataPrototype(
19963 "unsigned char",
"st_info",
"= 0",
19964 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
19967#ifndef DOCUMENTATION
19968 AsmElfSymbol.setDataPrototype(
19969 "unsigned char",
"st_res1",
"= 0",
19970 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
19973#ifndef DOCUMENTATION
19974 AsmElfSymbol.setDataPrototype(
19975 "unsigned",
"st_shndx",
"= 0",
19976 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
19979#ifndef DOCUMENTATION
19980 AsmElfSymbol.setDataPrototype(
19981 "Rose::BinaryAnalysis::Address",
"st_size",
"= 0",
19982 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
19985#ifndef DOCUMENTATION
19986 AsmElfSymbol.setDataPrototype(
19987 "SgUnsignedCharList",
"extra",
"",
19988 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
19991 DECLARE_OTHERS(AsmElfSymbol);
19992#if defined(SgAsmElfSymbol_OTHERS) || defined(DOCUMENTATION)
19995#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
19997 friend class boost::serialization::access;
20000 void serialize(S &s,
const unsigned ) {
20003 s & BOOST_SERIALIZATION_NVP(p_st_info);
20004 s & BOOST_SERIALIZATION_NVP(p_st_res1);
20005 s & BOOST_SERIALIZATION_NVP(p_st_shndx);
20006 s & BOOST_SERIALIZATION_NVP(p_st_size);
20007 s & BOOST_SERIALIZATION_NVP(p_extra);
20015 enum ElfSymBinding {
20045#if !defined(SWIG) && !defined(_MSC_VER)
20046 __attribute__((packed))
20052 unsigned char st_info;
20053 unsigned char st_res1;
20058#if !defined(SWIG) && !defined(_MSC_VER)
20059 __attribute__((packed))
20150 virtual void dump(FILE *f,
const char *prefix, ssize_t idx)
const override;
20161 static std::string
toString(SgAsmElfSymbol::ElfSymBinding);
20167 void parse_common();
20173 SgAsmElfSymbol::ElfSymBinding get_elf_binding() const ROSE_DEPRECATED("use
get_elfBinding");
20194#ifdef DOCUMENTATION
20203DECLARE_LEAF_CLASS(AsmElfStrtab);
20204IS_SERIALIZABLE(AsmElfStrtab);
20206#ifndef DOCUMENTATION
20207AsmElfStrtab.useSmallHeader(
true);
20210DECLARE_HEADERS(AsmElfStrtab);
20211#if defined(SgAsmElfStrtab_HEADERS) || defined(DOCUMENTATION)
20212#include <Rose/BinaryAnalysis/Address.h>
20215#ifdef DOCUMENTATION
20220 DECLARE_OTHERS(AsmElfStrtab);
20221#if defined(SgAsmElfStrtab_OTHERS) || defined(DOCUMENTATION)
20224#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
20226 friend class boost::serialization::access;
20229 void serialize(S &s,
const unsigned ) {
20290 ROSE_DEPRECATED(
"use get_storageSize");
20291 virtual void allocate_overlap(
SgAsmStringStorage*)
override ROSE_DEPRECATED(
"use allocateOverlap");
20309#ifdef DOCUMENTATION
20318DECLARE_LEAF_CLASS(AsmElfStringSection);
20319IS_SERIALIZABLE(AsmElfStringSection);
20321#ifndef DOCUMENTATION
20322AsmElfStringSection.useSmallHeader(
true);
20325DECLARE_HEADERS(AsmElfStringSection);
20326#if defined(SgAsmElfStringSection_HEADERS) || defined(DOCUMENTATION)
20327#include <Rose/BinaryAnalysis/Address.h>
20330#ifdef DOCUMENTATION
20337#ifndef DOCUMENTATION
20338 AsmElfStringSection.setDataPrototype(
20339 "SgAsmElfStrtab*",
"strtab",
"= nullptr",
20340 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20343 DECLARE_OTHERS(AsmElfStringSection);
20344#if defined(SgAsmElfStringSection_OTHERS) || defined(DOCUMENTATION)
20347#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
20349 friend class boost::serialization::access;
20352 void serialize(S &s,
const unsigned ) {
20355 s & BOOST_SERIALIZATION_NVP(p_strtab);
20377 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
20412#ifdef DOCUMENTATION
20421DECLARE_LEAF_CLASS(AsmElfSegmentTableEntryList);
20422IS_SERIALIZABLE(AsmElfSegmentTableEntryList);
20424#ifndef DOCUMENTATION
20425AsmElfSegmentTableEntryList.useSmallHeader(
true);
20428DECLARE_HEADERS(AsmElfSegmentTableEntryList);
20429#if defined(SgAsmElfSegmentTableEntryList_HEADERS) || defined(DOCUMENTATION)
20430#include <sageContainer.h>
20433#ifdef DOCUMENTATION
20437#ifndef DOCUMENTATION
20438 AsmElfSegmentTableEntryList.setDataPrototype(
20439 "SgAsmElfSegmentTableEntryPtrList",
"entries",
"",
20440 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
20443 DECLARE_OTHERS(AsmElfSegmentTableEntryList);
20444#if defined(SgAsmElfSegmentTableEntryList_OTHERS) || defined(DOCUMENTATION)
20447#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
20449 friend class boost::serialization::access;
20452 void serialize(S &s,
const unsigned ) {
20455 s & BOOST_SERIALIZATION_NVP(p_entries);
20489#ifdef DOCUMENTATION
20498DECLARE_LEAF_CLASS(AsmElfSegmentTableEntry);
20499IS_SERIALIZABLE(AsmElfSegmentTableEntry);
20501#ifndef DOCUMENTATION
20502AsmElfSegmentTableEntry.useSmallHeader(
true);
20505DECLARE_HEADERS(AsmElfSegmentTableEntry);
20506#if defined(SgAsmElfSegmentTableEntry_HEADERS) || defined(DOCUMENTATION)
20507#include <Rose/BinaryAnalysis/Address.h>
20508#include <Rose/BinaryAnalysis/ByteOrder.h>
20509#include <sageContainer.h>
20512#ifdef DOCUMENTATION
20517#ifndef DOCUMENTATION
20518 AsmElfSegmentTableEntry.setDataPrototype(
20519 "size_t",
"index",
"= 0",
20520 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20523#ifndef DOCUMENTATION
20524 AsmElfSegmentTableEntry.setDataPrototype(
20525 "SgAsmElfSegmentTableEntry::SegmentType",
"type",
"= SgAsmElfSegmentTableEntry::PT_LOAD",
20526 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20529#ifndef DOCUMENTATION
20530 AsmElfSegmentTableEntry.setDataPrototype(
20531 "SgAsmElfSegmentTableEntry::SegmentFlags",
"flags",
"= SgAsmElfSegmentTableEntry::PF_NONE",
20532 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20535#ifndef DOCUMENTATION
20536 AsmElfSegmentTableEntry.setDataPrototype(
20537 "Rose::BinaryAnalysis::Address",
"offset",
"= 0",
20538 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20541#ifndef DOCUMENTATION
20542 AsmElfSegmentTableEntry.setDataPrototype(
20543 "Rose::BinaryAnalysis::Address",
"vaddr",
"= 0",
20544 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20547#ifndef DOCUMENTATION
20548 AsmElfSegmentTableEntry.setDataPrototype(
20549 "Rose::BinaryAnalysis::Address",
"paddr",
"= 0",
20550 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20553#ifndef DOCUMENTATION
20554 AsmElfSegmentTableEntry.setDataPrototype(
20555 "Rose::BinaryAnalysis::Address",
"filesz",
"= 0",
20556 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20559#ifndef DOCUMENTATION
20560 AsmElfSegmentTableEntry.setDataPrototype(
20561 "Rose::BinaryAnalysis::Address",
"memsz",
"= 0",
20562 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20565#ifndef DOCUMENTATION
20566 AsmElfSegmentTableEntry.setDataPrototype(
20567 "Rose::BinaryAnalysis::Address",
"align",
"= 0",
20568 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20571#ifndef DOCUMENTATION
20572 AsmElfSegmentTableEntry.setDataPrototype(
20573 "SgUnsignedCharList",
"extra",
"",
20574 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20577 DECLARE_OTHERS(AsmElfSegmentTableEntry);
20578#if defined(SgAsmElfSegmentTableEntry_OTHERS) || defined(DOCUMENTATION)
20581#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
20583 friend class boost::serialization::access;
20586 void serialize(S &s,
const unsigned ) {
20589 s & BOOST_SERIALIZATION_NVP(p_index);
20590 s & BOOST_SERIALIZATION_NVP(p_type);
20591 s & BOOST_SERIALIZATION_NVP(p_flags);
20592 s & BOOST_SERIALIZATION_NVP(p_offset);
20593 s & BOOST_SERIALIZATION_NVP(p_vaddr);
20594 s & BOOST_SERIALIZATION_NVP(p_paddr);
20595 s & BOOST_SERIALIZATION_NVP(p_filesz);
20596 s & BOOST_SERIALIZATION_NVP(p_memsz);
20597 s & BOOST_SERIALIZATION_NVP(p_align);
20598 s & BOOST_SERIALIZATION_NVP(p_extra);
20619 PT_HIOS = 0x6fffffff,
20621 PT_HIPROC = 0x7fffffff,
20665#if !defined(SWIG) && !defined(_MSC_VER)
20666 __attribute__((packed))
20680#if !defined(SWIG) && !defined(_MSC_VER)
20681 __attribute__((packed))
20812 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
20824 void update_from_section(
SgAsmElfSection*) ROSE_DEPRECATED(
"use updateFromSection");
20844#ifdef DOCUMENTATION
20853DECLARE_LEAF_CLASS(AsmElfSegmentTable);
20854IS_SERIALIZABLE(AsmElfSegmentTable);
20856#ifndef DOCUMENTATION
20857AsmElfSegmentTable.useSmallHeader(
true);
20860DECLARE_HEADERS(AsmElfSegmentTable);
20861#if defined(SgAsmElfSegmentTable_HEADERS) || defined(DOCUMENTATION)
20862#include <Rose/BinaryAnalysis/Address.h>
20865#ifdef DOCUMENTATION
20875 DECLARE_OTHERS(AsmElfSegmentTable);
20876#if defined(SgAsmElfSegmentTable_OTHERS) || defined(DOCUMENTATION)
20879#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
20881 friend class boost::serialization::access;
20884 void serialize(S &s,
const unsigned ) {
20926 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
20951#ifdef DOCUMENTATION
20960DECLARE_LEAF_CLASS(AsmElfSectionTableEntry);
20961IS_SERIALIZABLE(AsmElfSectionTableEntry);
20963#ifndef DOCUMENTATION
20964AsmElfSectionTableEntry.useSmallHeader(
true);
20967DECLARE_HEADERS(AsmElfSectionTableEntry);
20968#if defined(SgAsmElfSectionTableEntry_HEADERS) || defined(DOCUMENTATION)
20969#include <Rose/BinaryAnalysis/Address.h>
20970#include <Rose/BinaryAnalysis/ByteOrder.h>
20971#include <sageContainer.h>
20974#ifdef DOCUMENTATION
20979#ifndef DOCUMENTATION
20980 AsmElfSectionTableEntry.setDataPrototype(
20981 "unsigned",
"sh_name",
"= 0",
20982 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20985#ifndef DOCUMENTATION
20986 AsmElfSectionTableEntry.setDataPrototype(
20987 "SgAsmElfSectionTableEntry::SectionType",
"sh_type",
"= SHT_PROGBITS",
20988 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20991#ifndef DOCUMENTATION
20992 AsmElfSectionTableEntry.setDataPrototype(
20993 "unsigned long",
"sh_link",
"= 0",
20994 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
20997#ifndef DOCUMENTATION
20998 AsmElfSectionTableEntry.setDataPrototype(
20999 "unsigned long",
"sh_info",
"= 0",
21000 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21003#ifndef DOCUMENTATION
21004 AsmElfSectionTableEntry.setDataPrototype(
21005 "uint64_t",
"sh_flags",
"= 0",
21006 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21009#ifndef DOCUMENTATION
21010 AsmElfSectionTableEntry.setDataPrototype(
21011 "Rose::BinaryAnalysis::Address",
"sh_addr",
"= 0",
21012 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21015#ifndef DOCUMENTATION
21016 AsmElfSectionTableEntry.setDataPrototype(
21017 "Rose::BinaryAnalysis::Address",
"sh_offset",
"= 0",
21018 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21021#ifndef DOCUMENTATION
21022 AsmElfSectionTableEntry.setDataPrototype(
21023 "Rose::BinaryAnalysis::Address",
"sh_size",
"= 0",
21024 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21027#ifndef DOCUMENTATION
21028 AsmElfSectionTableEntry.setDataPrototype(
21029 "Rose::BinaryAnalysis::Address",
"sh_addralign",
"= 0",
21030 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21033#ifndef DOCUMENTATION
21034 AsmElfSectionTableEntry.setDataPrototype(
21035 "Rose::BinaryAnalysis::Address",
"sh_entsize",
"= 0",
21036 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21039#ifndef DOCUMENTATION
21040 AsmElfSectionTableEntry.setDataPrototype(
21041 "SgUnsignedCharList",
"extra",
"",
21042 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21045 DECLARE_OTHERS(AsmElfSectionTableEntry);
21046#if defined(SgAsmElfSectionTableEntry_OTHERS) || defined(DOCUMENTATION)
21049#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
21051 friend class boost::serialization::access;
21054 void serialize(S &s,
const unsigned ) {
21057 s & BOOST_SERIALIZATION_NVP(p_sh_name);
21058 s & BOOST_SERIALIZATION_NVP(p_sh_type);
21059 s & BOOST_SERIALIZATION_NVP(p_sh_link);
21060 s & BOOST_SERIALIZATION_NVP(p_sh_info);
21061 s & BOOST_SERIALIZATION_NVP(p_sh_flags);
21062 s & BOOST_SERIALIZATION_NVP(p_sh_addr);
21063 s & BOOST_SERIALIZATION_NVP(p_sh_offset);
21064 s & BOOST_SERIALIZATION_NVP(p_sh_size);
21065 s & BOOST_SERIALIZATION_NVP(p_sh_addralign);
21066 s & BOOST_SERIALIZATION_NVP(p_sh_entsize);
21067 s & BOOST_SERIALIZATION_NVP(p_extra);
21096 SHT_LOPROC = 0x70000000,
21097 SHT_HIPROC = 0x7fffffff,
21098 SHT_LOUSER = 0x80000000,
21099 SHT_HIUSER = 0xffffffff
21133 uint32_t sh_offset;
21137 uint32_t sh_addralign;
21138 uint32_t sh_entsize;
21140#if !defined(SWIG) && !defined(_MSC_VER)
21141 __attribute__((packed))
21150 uint64_t sh_offset;
21154 uint64_t sh_addralign;
21155 uint64_t sh_entsize;
21157#if !defined(SWIG) && !defined(_MSC_VER)
21158 __attribute__((packed))
21304 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
21314 void update_from_section(
SgAsmElfSection*) ROSE_DEPRECATED(
"use updateFromSection");
21334#ifdef DOCUMENTATION
21343DECLARE_LEAF_CLASS(AsmElfSectionTable);
21344IS_SERIALIZABLE(AsmElfSectionTable);
21346#ifndef DOCUMENTATION
21347AsmElfSectionTable.useSmallHeader(
true);
21350DECLARE_HEADERS(AsmElfSectionTable);
21351#if defined(SgAsmElfSectionTable_HEADERS) || defined(DOCUMENTATION)
21352#include <Rose/BinaryAnalysis/Address.h>
21355#ifdef DOCUMENTATION
21364 DECLARE_OTHERS(AsmElfSectionTable);
21365#if defined(SgAsmElfSectionTable_OTHERS) || defined(DOCUMENTATION)
21368#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
21370 friend class boost::serialization::access;
21373 void serialize(S &s,
const unsigned ) {
21413 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
21438#ifdef DOCUMENTATION
21447DECLARE_LEAF_CLASS(AsmElfRelocSection);
21448IS_SERIALIZABLE(AsmElfRelocSection);
21450#ifndef DOCUMENTATION
21451AsmElfRelocSection.useSmallHeader(
true);
21454DECLARE_HEADERS(AsmElfRelocSection);
21455#if defined(SgAsmElfRelocSection_HEADERS) || defined(DOCUMENTATION)
21456#include <Rose/BinaryAnalysis/Address.h>
21458#ifdef ROSE_SgAsmElfRelocSection_IMPL
21459#include <SgAsmElfRelocEntryList.h>
21463#ifdef DOCUMENTATION
21468#ifndef DOCUMENTATION
21469 AsmElfRelocSection.setDataPrototype(
21470 "bool",
"usesAddend",
"= true",
21471 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21474#ifndef DOCUMENTATION
21475 AsmElfRelocSection.setDataPrototype(
21476 "SgAsmElfSection*",
"targetSection",
"= nullptr",
21477 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21480#ifndef DOCUMENTATION
21481 AsmElfRelocSection.setDataPrototype(
21482 "SgAsmElfRelocEntryList*",
"entries",
"= createAndParent<SgAsmElfRelocEntryList>(this)",
21483 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
21486 DECLARE_OTHERS(AsmElfRelocSection);
21487#if defined(SgAsmElfRelocSection_OTHERS) || defined(DOCUMENTATION)
21490#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
21492 friend class boost::serialization::access;
21495 void serialize(S &s,
const unsigned ) {
21498 s & BOOST_SERIALIZATION_NVP(p_usesAddend);
21499 s & BOOST_SERIALIZATION_NVP(p_targetSection);
21500 s & BOOST_SERIALIZATION_NVP(p_entries);
21539 calculateSizes(
size_t *total,
size_t *required,
size_t *optional,
size_t *entcount)
const override;
21547 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
21553 bool get_uses_addend() const ROSE_DEPRECATED("use
get_usesAddend");
21554 void set_uses_addend(
bool) ROSE_DEPRECATED("use
set_usesAddend");
21558 virtual
Rose::BinaryAnalysis::Address calculate_sizes(
size_t*,
size_t*,
size_t*,
size_t*) const override
21577#ifdef DOCUMENTATION
21586DECLARE_LEAF_CLASS(AsmElfRelocEntryList);
21587IS_SERIALIZABLE(AsmElfRelocEntryList);
21589#ifndef DOCUMENTATION
21590AsmElfRelocEntryList.useSmallHeader(
true);
21593DECLARE_HEADERS(AsmElfRelocEntryList);
21594#if defined(SgAsmElfRelocEntryList_HEADERS) || defined(DOCUMENTATION)
21595#include <sageContainer.h>
21598#ifdef DOCUMENTATION
21606#ifndef DOCUMENTATION
21607 AsmElfRelocEntryList.setDataPrototype(
21608 "SgAsmElfRelocEntryPtrList",
"entries",
"",
21609 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
21612 DECLARE_OTHERS(AsmElfRelocEntryList);
21613#if defined(SgAsmElfRelocEntryList_OTHERS) || defined(DOCUMENTATION)
21616#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
21618 friend class boost::serialization::access;
21621 void serialize(S &s,
const unsigned ) {
21624 s & BOOST_SERIALIZATION_NVP(p_entries);
21655#ifdef DOCUMENTATION
21664DECLARE_LEAF_CLASS(AsmElfRelocEntry);
21665IS_SERIALIZABLE(AsmElfRelocEntry);
21667#ifndef DOCUMENTATION
21668AsmElfRelocEntry.useSmallHeader(
true);
21671DECLARE_HEADERS(AsmElfRelocEntry);
21672#if defined(SgAsmElfRelocEntry_HEADERS) || defined(DOCUMENTATION)
21673#include <Rose/BinaryAnalysis/Address.h>
21674#include <Rose/BinaryAnalysis/ByteOrder.h>
21675#include <sageContainer.h>
21678#ifdef DOCUMENTATION
21683#ifndef DOCUMENTATION
21684 AsmElfRelocEntry.setDataPrototype(
21685 "Rose::BinaryAnalysis::Address",
"r_offset",
"= 0",
21686 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21689#ifndef DOCUMENTATION
21690 AsmElfRelocEntry.setDataPrototype(
21691 "Rose::BinaryAnalysis::Address",
"r_addend",
"= 0",
21692 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21695#ifndef DOCUMENTATION
21696 AsmElfRelocEntry.setDataPrototype(
21697 "unsigned long",
"sym",
"= 0",
21698 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21701#ifndef DOCUMENTATION
21702 AsmElfRelocEntry.setDataPrototype(
21703 "SgAsmElfRelocEntry::RelocType",
"type",
"= R_386_NONE",
21704 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21707#ifndef DOCUMENTATION
21708 AsmElfRelocEntry.setDataPrototype(
21709 "SgUnsignedCharList",
"extra",
"",
21710 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
21713 DECLARE_OTHERS(AsmElfRelocEntry);
21714#if defined(SgAsmElfRelocEntry_OTHERS) || defined(DOCUMENTATION)
21717#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
21719 friend class boost::serialization::access;
21722 void serialize(S &s,
const unsigned ) {
21725 s & BOOST_SERIALIZATION_NVP(p_r_offset);
21726 s & BOOST_SERIALIZATION_NVP(p_r_addend);
21727 s & BOOST_SERIALIZATION_NVP(p_sym);
21728 s & BOOST_SERIALIZATION_NVP(p_type);
21729 s & BOOST_SERIALIZATION_NVP(p_extra);
21813#if !defined(SWIG) && !defined(_MSC_VER)
21814 __attribute__((packed))
21823#if !defined(SWIG) && !defined(_MSC_VER)
21824 __attribute__((packed))
21832#if !defined(SWIG) && !defined(_MSC_VER)
21833 __attribute__((packed))
21841#if !defined(SWIG) && !defined(_MSC_VER)
21842 __attribute__((packed))
21931 virtual void dump(FILE *f,
const char *prefix, ssize_t idx)
const {
21932 dump(f, prefix, idx, NULL);
21943 std::string reloc_name() const ROSE_DEPRECATED("use
toString");
21961#ifdef DOCUMENTATION
21970DECLARE_LEAF_CLASS(AsmElfNoteSection);
21971IS_SERIALIZABLE(AsmElfNoteSection);
21973#ifndef DOCUMENTATION
21974AsmElfNoteSection.useSmallHeader(
true);
21977DECLARE_HEADERS(AsmElfNoteSection);
21978#if defined(SgAsmElfNoteSection_HEADERS) || defined(DOCUMENTATION)
21979#ifdef ROSE_SgAsmElfNoteSection_IMPL
21980#include <SgAsmElfNoteEntryList.h>
21984#ifdef DOCUMENTATION
21988#ifndef DOCUMENTATION
21989 AsmElfNoteSection.setDataPrototype(
21990 "SgAsmElfNoteEntryList*",
"entries",
"= createAndParent<SgAsmElfNoteEntryList>(this)",
21991 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
21994 DECLARE_OTHERS(AsmElfNoteSection);
21995#if defined(SgAsmElfNoteSection_OTHERS) || defined(DOCUMENTATION)
21998#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
22000 friend class boost::serialization::access;
22003 void serialize(S &s,
const unsigned ) {
22006 s & BOOST_SERIALIZATION_NVP(p_entries);
22033 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
22051#ifdef DOCUMENTATION
22060DECLARE_LEAF_CLASS(AsmElfNoteEntryList);
22061IS_SERIALIZABLE(AsmElfNoteEntryList);
22063#ifndef DOCUMENTATION
22064AsmElfNoteEntryList.useSmallHeader(
true);
22067DECLARE_HEADERS(AsmElfNoteEntryList);
22068#if defined(SgAsmElfNoteEntryList_HEADERS) || defined(DOCUMENTATION)
22069#include <sageContainer.h>
22072#ifdef DOCUMENTATION
22080#ifndef DOCUMENTATION
22081 AsmElfNoteEntryList.setDataPrototype(
22082 "SgAsmElfNoteEntryPtrList",
"entries",
"",
22083 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22086 DECLARE_OTHERS(AsmElfNoteEntryList);
22087#if defined(SgAsmElfNoteEntryList_OTHERS) || defined(DOCUMENTATION)
22090#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
22092 friend class boost::serialization::access;
22095 void serialize(S &s,
const unsigned ) {
22098 s & BOOST_SERIALIZATION_NVP(p_entries);
22129#ifdef DOCUMENTATION
22138DECLARE_LEAF_CLASS(AsmElfNoteEntry);
22139IS_SERIALIZABLE(AsmElfNoteEntry);
22141#ifndef DOCUMENTATION
22142AsmElfNoteEntry.useSmallHeader(
true);
22145DECLARE_HEADERS(AsmElfNoteEntry);
22146#if defined(SgAsmElfNoteEntry_HEADERS) || defined(DOCUMENTATION)
22147#include <Rose/BinaryAnalysis/Address.h>
22149#include <sageContainer.h>
22151#ifdef ROSE_SgAsmElfNoteEntry_IMPL
22152#include <SgAsmBasicString.h>
22156#ifdef DOCUMENTATION
22161#ifndef DOCUMENTATION
22162 AsmElfNoteEntry.setDataPrototype(
22163 "unsigned",
"type",
"= 0",
22164 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22167#ifndef DOCUMENTATION
22168 AsmElfNoteEntry.setDataPrototype(
22169 "SgAsmGenericString*",
"name",
"= createAndParent<SgAsmBasicString>(this)",
22170 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
22173#ifndef DOCUMENTATION
22174 AsmElfNoteEntry.setDataPrototype(
22175 "SgUnsignedCharList",
"payload",
"",
22176 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22179 DECLARE_OTHERS(AsmElfNoteEntry);
22180#if defined(SgAsmElfNoteEntry_OTHERS) || defined(DOCUMENTATION)
22183#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
22185 friend class boost::serialization::access;
22188 void serialize(S &s,
const unsigned ) {
22191 s & BOOST_SERIALIZATION_NVP(p_type);
22192 s & BOOST_SERIALIZATION_NVP(p_name);
22193 s & BOOST_SERIALIZATION_NVP(p_payload);
22252 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
22284#ifdef DOCUMENTATION
22293DECLARE_LEAF_CLASS(AsmElfFileHeader);
22294IS_SERIALIZABLE(AsmElfFileHeader);
22296#ifndef DOCUMENTATION
22297AsmElfFileHeader.useSmallHeader(
true);
22300DECLARE_HEADERS(AsmElfFileHeader);
22301#if defined(SgAsmElfFileHeader_HEADERS) || defined(DOCUMENTATION)
22302#include <Rose/BinaryAnalysis/ByteOrder.h>
22305#ifdef DOCUMENTATION
22317#ifndef DOCUMENTATION
22318 AsmElfFileHeader.setDataPrototype(
22319 "unsigned char",
"e_ident_file_class",
"= 0",
22320 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22323#ifndef DOCUMENTATION
22324 AsmElfFileHeader.setDataPrototype(
22325 "unsigned char",
"e_ident_data_encoding",
"= 0",
22326 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22329#ifndef DOCUMENTATION
22330 AsmElfFileHeader.setDataPrototype(
22331 "unsigned char",
"e_ident_file_version",
"= 0",
22332 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22335#ifndef DOCUMENTATION
22336 AsmElfFileHeader.setDataPrototype(
22337 "SgUnsignedCharList",
"e_ident_padding",
"",
22338 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22341#ifndef DOCUMENTATION
22342 AsmElfFileHeader.setDataPrototype(
22343 "unsigned long",
"e_type",
"= 0",
22344 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22347#ifndef DOCUMENTATION
22348 AsmElfFileHeader.setDataPrototype(
22349 "unsigned long",
"e_machine",
"= 0",
22350 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22353#ifndef DOCUMENTATION
22354 AsmElfFileHeader.setDataPrototype(
22355 "unsigned long",
"e_flags",
"= 0",
22356 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22359#ifndef DOCUMENTATION
22360 AsmElfFileHeader.setDataPrototype(
22361 "unsigned long",
"e_ehsize",
"= 0",
22362 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22365#ifndef DOCUMENTATION
22366 AsmElfFileHeader.setDataPrototype(
22367 "unsigned long",
"phextrasz",
"= 0",
22368 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22371#ifndef DOCUMENTATION
22372 AsmElfFileHeader.setDataPrototype(
22373 "unsigned long",
"e_phnum",
"= 0",
22374 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22377#ifndef DOCUMENTATION
22378 AsmElfFileHeader.setDataPrototype(
22379 "unsigned long",
"shextrasz",
"= 0",
22380 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22383#ifndef DOCUMENTATION
22384 AsmElfFileHeader.setDataPrototype(
22385 "unsigned long",
"e_shnum",
"= 0",
22386 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22389#ifndef DOCUMENTATION
22390 AsmElfFileHeader.setDataPrototype(
22391 "unsigned long",
"e_shstrndx",
"= 0",
22392 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22395#ifndef DOCUMENTATION
22396 AsmElfFileHeader.setDataPrototype(
22397 "SgAsmElfSectionTable*",
"sectionTable",
"= nullptr",
22398 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22401#ifndef DOCUMENTATION
22402 AsmElfFileHeader.setDataPrototype(
22403 "SgAsmElfSegmentTable*",
"segmentTable",
"= nullptr",
22404 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22407 DECLARE_OTHERS(AsmElfFileHeader);
22408#if defined(SgAsmElfFileHeader_OTHERS) || defined(DOCUMENTATION)
22411#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
22413 friend class boost::serialization::access;
22416 void serialize(S &s,
const unsigned ) {
22419 s & BOOST_SERIALIZATION_NVP(p_e_ident_file_class);
22420 s & BOOST_SERIALIZATION_NVP(p_e_ident_data_encoding);
22421 s & BOOST_SERIALIZATION_NVP(p_e_ident_file_version);
22422 s & BOOST_SERIALIZATION_NVP(p_e_ident_padding);
22423 s & BOOST_SERIALIZATION_NVP(p_e_type);
22424 s & BOOST_SERIALIZATION_NVP(p_e_machine);
22425 s & BOOST_SERIALIZATION_NVP(p_e_flags);
22426 s & BOOST_SERIALIZATION_NVP(p_e_ehsize);
22427 s & BOOST_SERIALIZATION_NVP(p_phextrasz);
22428 s & BOOST_SERIALIZATION_NVP(p_e_phnum);
22429 s & BOOST_SERIALIZATION_NVP(p_shextrasz);
22430 s & BOOST_SERIALIZATION_NVP(p_e_shnum);
22431 s & BOOST_SERIALIZATION_NVP(p_e_shstrndx);
22432 s & BOOST_SERIALIZATION_NVP(p_sectionTable);
22433 s & BOOST_SERIALIZATION_NVP(p_segmentTable);
22489#if !defined(SWIG) && !defined(_MSC_VER)
22490 __attribute__((packed))
22495 unsigned char e_ident_magic[4];
22496 unsigned char e_ident_file_class;
22497 unsigned char e_ident_data_encoding;
22498 unsigned char e_ident_file_version;
22499 unsigned char e_ident_padding[9];
22501 uint16_t e_machine;
22502 uint32_t e_version;
22508 uint16_t e_phentsize;
22510 uint16_t e_shentsize;
22512 uint16_t e_shstrndx;
22514#if !defined(SWIG) && !defined(_MSC_VER)
22515 __attribute__((packed))
22717 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
22749 virtual const
char *format_name() const override ROSE_DEPRECATED("use
formatName");
22767#ifdef DOCUMENTATION
22776DECLARE_LEAF_CLASS(AsmElfEHFrameSection);
22777IS_SERIALIZABLE(AsmElfEHFrameSection);
22779#ifndef DOCUMENTATION
22780AsmElfEHFrameSection.useSmallHeader(
true);
22783DECLARE_HEADERS(AsmElfEHFrameSection);
22784#if defined(SgAsmElfEHFrameSection_HEADERS) || defined(DOCUMENTATION)
22785#include <Rose/BinaryAnalysis/Address.h>
22787#ifdef ROSE_SgAsmElfEHFrameSection_IMPL
22788#include <SgAsmElfEHFrameEntryCIList.h>
22792#ifdef DOCUMENTATION
22797#ifndef DOCUMENTATION
22798 AsmElfEHFrameSection.setDataPrototype(
22799 "SgAsmElfEHFrameEntryCIList*",
"ci_entries",
"= createAndParent<SgAsmElfEHFrameEntryCIList>(this)",
22800 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
22803 DECLARE_OTHERS(AsmElfEHFrameSection);
22804#if defined(SgAsmElfEHFrameSection_OTHERS) || defined(DOCUMENTATION)
22807#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
22809 friend class boost::serialization::access;
22812 void serialize(S &s,
const unsigned ) {
22815 s & BOOST_SERIALIZATION_NVP(p_ci_entries);
22842 calculateSizes(
size_t *total,
size_t *required,
size_t *optional,
size_t *entcount)
const override;
22854 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
22861 ROSE_DEPRECATED(
"use calculateSizes");
22879#ifdef DOCUMENTATION
22888DECLARE_LEAF_CLASS(AsmElfEHFrameEntryFDList);
22889IS_SERIALIZABLE(AsmElfEHFrameEntryFDList);
22891#ifndef DOCUMENTATION
22892AsmElfEHFrameEntryFDList.useSmallHeader(
true);
22895DECLARE_HEADERS(AsmElfEHFrameEntryFDList);
22896#if defined(SgAsmElfEHFrameEntryFDList_HEADERS) || defined(DOCUMENTATION)
22897#include <sageContainer.h>
22900#ifdef DOCUMENTATION
22908#ifndef DOCUMENTATION
22909 AsmElfEHFrameEntryFDList.setDataPrototype(
22910 "SgAsmElfEHFrameEntryFDPtrList",
"entries",
"",
22911 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22914 DECLARE_OTHERS(AsmElfEHFrameEntryFDList);
22915#if defined(SgAsmElfEHFrameEntryFDList_OTHERS) || defined(DOCUMENTATION)
22918#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
22920 friend class boost::serialization::access;
22923 void serialize(S &s,
const unsigned ) {
22926 s & BOOST_SERIALIZATION_NVP(p_entries);
22957#ifdef DOCUMENTATION
22966DECLARE_LEAF_CLASS(AsmElfEHFrameEntryFD);
22967IS_SERIALIZABLE(AsmElfEHFrameEntryFD);
22969#ifndef DOCUMENTATION
22970AsmElfEHFrameEntryFD.useSmallHeader(
true);
22973DECLARE_HEADERS(AsmElfEHFrameEntryFD);
22974#if defined(SgAsmElfEHFrameEntryFD_HEADERS) || defined(DOCUMENTATION)
22975#include <Rose/BinaryAnalysis/Address.h>
22976#include <Rose/BinaryAnalysis/RelativeVirtualAddress.h>
22977#include <sageContainer.h>
22980#ifdef DOCUMENTATION
22985#ifndef DOCUMENTATION
22986 AsmElfEHFrameEntryFD.setDataPrototype(
22987 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"begin_rva",
"",
22988 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22991#ifndef DOCUMENTATION
22992 AsmElfEHFrameEntryFD.setDataPrototype(
22993 "Rose::BinaryAnalysis::Address",
"size",
"= 0",
22994 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
22997#ifndef DOCUMENTATION
22998 AsmElfEHFrameEntryFD.setDataPrototype(
22999 "SgUnsignedCharList",
"augmentation_data",
"",
23000 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23003#ifndef DOCUMENTATION
23004 AsmElfEHFrameEntryFD.setDataPrototype(
23005 "SgUnsignedCharList",
"instructions",
"",
23006 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23009 DECLARE_OTHERS(AsmElfEHFrameEntryFD);
23010#if defined(SgAsmElfEHFrameEntryFD_OTHERS) || defined(DOCUMENTATION)
23013#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
23015 friend class boost::serialization::access;
23018 void serialize(S &s,
const unsigned ) {
23021 s & BOOST_SERIALIZATION_NVP(p_begin_rva);
23022 s & BOOST_SERIALIZATION_NVP(p_size);
23023 s & BOOST_SERIALIZATION_NVP(p_augmentation_data);
23024 s & BOOST_SERIALIZATION_NVP(p_instructions);
23076 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
23100#ifdef DOCUMENTATION
23109DECLARE_LEAF_CLASS(AsmElfEHFrameEntryCIList);
23110IS_SERIALIZABLE(AsmElfEHFrameEntryCIList);
23112#ifndef DOCUMENTATION
23113AsmElfEHFrameEntryCIList.useSmallHeader(
true);
23116DECLARE_HEADERS(AsmElfEHFrameEntryCIList);
23117#if defined(SgAsmElfEHFrameEntryCIList_HEADERS) || defined(DOCUMENTATION)
23118#include <sageContainer.h>
23121#ifdef DOCUMENTATION
23129#ifndef DOCUMENTATION
23130 AsmElfEHFrameEntryCIList.setDataPrototype(
23131 "SgAsmElfEHFrameEntryCIPtrList",
"entries",
"",
23132 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23135 DECLARE_OTHERS(AsmElfEHFrameEntryCIList);
23136#if defined(SgAsmElfEHFrameEntryCIList_OTHERS) || defined(DOCUMENTATION)
23139#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
23141 friend class boost::serialization::access;
23144 void serialize(S &s,
const unsigned ) {
23147 s & BOOST_SERIALIZATION_NVP(p_entries);
23178#ifdef DOCUMENTATION
23187DECLARE_LEAF_CLASS(AsmElfEHFrameEntryCI);
23188IS_SERIALIZABLE(AsmElfEHFrameEntryCI);
23190#ifndef DOCUMENTATION
23191AsmElfEHFrameEntryCI.useSmallHeader(
true);
23194DECLARE_HEADERS(AsmElfEHFrameEntryCI);
23195#if defined(SgAsmElfEHFrameEntryCI_HEADERS) || defined(DOCUMENTATION)
23196#include <Rose/BinaryAnalysis/Address.h>
23198#include <sageContainer.h>
23200#ifdef ROSE_SgAsmElfEHFrameEntryCI_IMPL
23201#include <SgAsmElfEHFrameEntryFDList.h>
23205#ifdef DOCUMENTATION
23212#ifndef DOCUMENTATION
23213 AsmElfEHFrameEntryCI.setDataPrototype(
23214 "int",
"version",
"= 0",
23215 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23218#ifndef DOCUMENTATION
23219 AsmElfEHFrameEntryCI.setDataPrototype(
23220 "std::string",
"augmentation_string",
"",
23221 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23224#ifndef DOCUMENTATION
23225 AsmElfEHFrameEntryCI.setDataPrototype(
23226 "uint64_t",
"eh_data",
"= 0",
23227 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23230#ifndef DOCUMENTATION
23231 AsmElfEHFrameEntryCI.setDataPrototype(
23232 "uint64_t",
"code_alignment_factor",
"= 0",
23233 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23236#ifndef DOCUMENTATION
23237 AsmElfEHFrameEntryCI.setDataPrototype(
23238 "int64_t",
"data_alignment_factor",
"= 0",
23239 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23242#ifndef DOCUMENTATION
23243 AsmElfEHFrameEntryCI.setDataPrototype(
23244 "uint64_t",
"augmentation_data_length",
"= 0",
23245 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23248#ifndef DOCUMENTATION
23249 AsmElfEHFrameEntryCI.setDataPrototype(
23250 "int",
"lsda_encoding",
"= -1",
23251 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23254#ifndef DOCUMENTATION
23255 AsmElfEHFrameEntryCI.setDataPrototype(
23256 "int",
"prh_encoding",
"= -1",
23257 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23260#ifndef DOCUMENTATION
23261 AsmElfEHFrameEntryCI.setDataPrototype(
23262 "unsigned",
"prh_arg",
"= 0",
23263 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23266#ifndef DOCUMENTATION
23267 AsmElfEHFrameEntryCI.setDataPrototype(
23268 "Rose::BinaryAnalysis::Address",
"prh_addr",
"= 0",
23269 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23272#ifndef DOCUMENTATION
23273 AsmElfEHFrameEntryCI.setDataPrototype(
23274 "int",
"addr_encoding",
"= -1",
23275 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23278#ifndef DOCUMENTATION
23279 AsmElfEHFrameEntryCI.setDataPrototype(
23280 "bool",
"sig_frame",
"= false",
23281 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23284#ifndef DOCUMENTATION
23285 AsmElfEHFrameEntryCI.setDataPrototype(
23286 "SgUnsignedCharList",
"instructions",
"",
23287 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23290#ifndef DOCUMENTATION
23291 AsmElfEHFrameEntryCI.setDataPrototype(
23292 "SgAsmElfEHFrameEntryFDList*",
"fd_entries",
"= createAndParent<SgAsmElfEHFrameEntryFDList>(this)",
23293 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
23296 DECLARE_OTHERS(AsmElfEHFrameEntryCI);
23297#if defined(SgAsmElfEHFrameEntryCI_OTHERS) || defined(DOCUMENTATION)
23300#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
23302 friend class boost::serialization::access;
23305 void serialize(S &s,
const unsigned ) {
23308 s & BOOST_SERIALIZATION_NVP(p_version);
23309 s & BOOST_SERIALIZATION_NVP(p_augmentation_string);
23310 s & BOOST_SERIALIZATION_NVP(p_eh_data);
23311 s & BOOST_SERIALIZATION_NVP(p_code_alignment_factor);
23312 s & BOOST_SERIALIZATION_NVP(p_data_alignment_factor);
23313 s & BOOST_SERIALIZATION_NVP(p_augmentation_data_length);
23314 s & BOOST_SERIALIZATION_NVP(p_lsda_encoding);
23315 s & BOOST_SERIALIZATION_NVP(p_prh_encoding);
23316 s & BOOST_SERIALIZATION_NVP(p_prh_arg);
23317 s & BOOST_SERIALIZATION_NVP(p_prh_addr);
23318 s & BOOST_SERIALIZATION_NVP(p_addr_encoding);
23319 s & BOOST_SERIALIZATION_NVP(p_sig_frame);
23320 s & BOOST_SERIALIZATION_NVP(p_instructions);
23321 s & BOOST_SERIALIZATION_NVP(p_fd_entries);
23472 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
23496#ifdef DOCUMENTATION
23505DECLARE_LEAF_CLASS(AsmElfDynamicSection);
23506IS_SERIALIZABLE(AsmElfDynamicSection);
23508#ifndef DOCUMENTATION
23509AsmElfDynamicSection.useSmallHeader(
true);
23512DECLARE_HEADERS(AsmElfDynamicSection);
23513#if defined(SgAsmElfDynamicSection_HEADERS) || defined(DOCUMENTATION)
23514#include <Rose/BinaryAnalysis/Address.h>
23516#ifdef ROSE_SgAsmElfDynamicSection_IMPL
23517#include <SgAsmElfDynamicEntryList.h>
23521#ifdef DOCUMENTATION
23526#ifndef DOCUMENTATION
23527 AsmElfDynamicSection.setDataPrototype(
23528 "SgAsmElfDynamicEntryList*",
"entries",
"= createAndParent<SgAsmElfDynamicEntryList>(this)",
23529 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
23532 DECLARE_OTHERS(AsmElfDynamicSection);
23533#if defined(SgAsmElfDynamicSection_OTHERS) || defined(DOCUMENTATION)
23536#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
23538 friend class boost::serialization::access;
23541 void serialize(S &s,
const unsigned ) {
23544 s & BOOST_SERIALIZATION_NVP(p_entries);
23572 calculateSizes(
size_t *total,
size_t *required,
size_t *optional,
size_t *entcount)
const override;
23580 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
23588 virtual
Rose::BinaryAnalysis::Address calculate_sizes(
size_t*,
size_t*,
size_t*,
size_t*) const override
23607#ifdef DOCUMENTATION
23616#ifndef DOCUMENTATION
23617AstNodeClass& AsmElfSection = nonTerminalConstructor(
23621 "AsmElfSectionTag",
23622 SubclassListBuilder()
23623 | AsmElfDynamicSection
23624 | AsmElfEHFrameSection
23625 | AsmElfNoteSection
23626 | AsmElfRelocSection
23627 | AsmElfStringSection
23628 | AsmElfSymbolSection
23629 | AsmElfSymverDefinedSection
23630 | AsmElfSymverNeededSection
23631 | AsmElfSymverSection
23633assert(AsmElfSection.associatedGrammar !=
nullptr);
23634AsmElfSection.setCppCondition(
"!defined(DOCUMENTATION)");
23635AsmElfSection.isBoostSerializable(
true);
23636AsmElfSection.setAutomaticGenerationOfConstructor(
false);
23637AsmElfSection.setAutomaticGenerationOfDestructor(
false);
23640#ifndef DOCUMENTATION
23641AsmElfSection.useSmallHeader(
true);
23644DECLARE_HEADERS(AsmElfSection);
23645#if defined(SgAsmElfSection_HEADERS) || defined(DOCUMENTATION)
23646#include <Rose/BinaryAnalysis/Address.h>
23648#ifdef ROSE_SgAsmElfSection_IMPL
23649#include <SgAsmElfSectionTableEntry.h>
23650#include <SgAsmElfSegmentTableEntry.h>
23654#ifdef DOCUMENTATION
23659#ifndef DOCUMENTATION
23660 AsmElfSection.setDataPrototype(
23661 "SgAsmElfSection*",
"linkedSection",
"= nullptr",
23662 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23665#ifndef DOCUMENTATION
23666 AsmElfSection.setDataPrototype(
23667 "SgAsmElfSectionTableEntry*",
"sectionEntry",
"= nullptr",
23668 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
23671#ifndef DOCUMENTATION
23672 AsmElfSection.setDataPrototype(
23673 "SgAsmElfSegmentTableEntry*",
"segmentEntry",
"= nullptr",
23674 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
23677 DECLARE_OTHERS(AsmElfSection);
23678#if defined(SgAsmElfSection_OTHERS) || defined(DOCUMENTATION)
23681#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
23683 friend class boost::serialization::access;
23686 void serialize(S &s,
const unsigned ) {
23689 s & BOOST_SERIALIZATION_NVP(p_linkedSection);
23690 s & BOOST_SERIALIZATION_NVP(p_sectionEntry);
23691 s & BOOST_SERIALIZATION_NVP(p_segmentEntry);
23760 size_t *entsize,
size_t *required,
size_t *optional,
size_t *entcount)
const;
23762 virtual void finishParsing();
23781 calculateSizes(
size_t *entsize,
size_t *required,
size_t *optional,
size_t *entcount)
const;
23786 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
23801 virtual
void set_linked_section(
SgAsmElfSection*) ROSE_DEPRECATED("use set_linkSection");
23810 Rose::BinaryAnalysis::Address
23811 calculate_sizes(
size_t,
size_t, const std::vector<
size_t>&,
size_t*,
size_t*,
size_t*,
size_t*) const
23813 virtual
void finish_parsing() ROSE_DEPRECATED("use finishParsing");
23814 virtual
Rose::BinaryAnalysis::Address
23815 calculate_sizes(
size_t*,
size_t*,
size_t*,
size_t*) const ROSE_DEPRECATED("use
calculateSizes");
23835#ifdef DOCUMENTATION
23844DECLARE_LEAF_CLASS(AsmElfDynamicEntryList);
23845IS_SERIALIZABLE(AsmElfDynamicEntryList);
23847#ifndef DOCUMENTATION
23848AsmElfDynamicEntryList.useSmallHeader(
true);
23851DECLARE_HEADERS(AsmElfDynamicEntryList);
23852#if defined(SgAsmElfDynamicEntryList_HEADERS) || defined(DOCUMENTATION)
23853#include <sageContainer.h>
23856#ifdef DOCUMENTATION
23864#ifndef DOCUMENTATION
23865 AsmElfDynamicEntryList.setDataPrototype(
23866 "SgAsmElfDynamicEntryPtrList",
"entries",
"",
23867 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23870 DECLARE_OTHERS(AsmElfDynamicEntryList);
23871#if defined(SgAsmElfDynamicEntryList_OTHERS) || defined(DOCUMENTATION)
23874#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
23876 friend class boost::serialization::access;
23879 void serialize(S &s,
const unsigned ) {
23882 s & BOOST_SERIALIZATION_NVP(p_entries);
23913#ifdef DOCUMENTATION
23922DECLARE_LEAF_CLASS(AsmElfDynamicEntry);
23923IS_SERIALIZABLE(AsmElfDynamicEntry);
23925#ifndef DOCUMENTATION
23926AsmElfDynamicEntry.useSmallHeader(
true);
23929DECLARE_HEADERS(AsmElfDynamicEntry);
23930#if defined(SgAsmElfDynamicEntry_HEADERS) || defined(DOCUMENTATION)
23931#include <Rose/BinaryAnalysis/ByteOrder.h>
23932#include <Rose/BinaryAnalysis/RelativeVirtualAddress.h>
23933#include <sageContainer.h>
23936#ifdef DOCUMENTATION
23941#ifndef DOCUMENTATION
23942 AsmElfDynamicEntry.setDataPrototype(
23943 "SgAsmElfDynamicEntry::EntryType",
"d_tag",
"= SgAsmElfDynamicEntry::DT_NULL",
23944 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23947#ifndef DOCUMENTATION
23948 AsmElfDynamicEntry.setDataPrototype(
23949 "Rose::BinaryAnalysis::RelativeVirtualAddress",
"d_val",
"",
23950 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23953#ifndef DOCUMENTATION
23954 AsmElfDynamicEntry.setDataPrototype(
23955 "SgAsmGenericString*",
"name",
"= nullptr",
23956 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
23959#ifndef DOCUMENTATION
23960 AsmElfDynamicEntry.setDataPrototype(
23961 "SgUnsignedCharList",
"extra",
"",
23962 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
23965 DECLARE_OTHERS(AsmElfDynamicEntry);
23966#if defined(SgAsmElfDynamicEntry_OTHERS) || defined(DOCUMENTATION)
23969#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
23971 friend class boost::serialization::access;
23974 void serialize(S &s,
const unsigned ) {
23977 s & BOOST_SERIALIZATION_NVP(p_d_tag);
23978 s & BOOST_SERIALIZATION_NVP(p_d_val);
23979 s & BOOST_SERIALIZATION_NVP(p_name);
23980 s & BOOST_SERIALIZATION_NVP(p_extra);
24014 DT_INIT_ARRAY = 25,
24015 DT_FINI_ARRAY = 26,
24016 DT_INIT_ARRAYSZ = 27,
24017 DT_FINI_ARRAYSZ = 28,
24020 DT_PREINIT_ARRAY = 32,
24021 DT_PREINIT_ARRAYSZ = 33,
24024 DT_GNU_PRELINKED =0x6ffffdf5,
24025 DT_GNU_CONFLICTSZ=0x6ffffdf6,
24026 DT_GNU_LIBLISTSZ=0x6ffffdf7,
24027 DT_CHECKSUM = 0x6ffffdf8,
24028 DT_PLTPADSZ = 0x6ffffdf9,
24029 DT_MOVEENT = 0x6ffffdfa,
24030 DT_MOVESZ = 0x6ffffdfb,
24031 DT_FEATURE_1= 0x6ffffdfc,
24032 DT_POSFLAG_1= 0x6ffffdfd,
24033 DT_SYMINSZ = 0x6ffffdfe,
24034 DT_SYMINENT = 0x6ffffdff,
24036 DT_GNU_HASH = 0x6ffffef5,
24037 DT_TLSDESC_PLT=0x6ffffef6,
24038 DT_TLSDESC_GOT=0x6ffffef7,
24039 DT_GNU_CONFLICT=0x6ffffef8,
24040 DT_GNU_LIBLIST=0x6ffffef9,
24041 DT_CONFIG = 0x6ffffefa,
24042 DT_DEPAUDIT = 0x6ffffefb,
24043 DT_AUDIT = 0x6ffffefc,
24044 DT_PLTPAD = 0x6ffffefd,
24045 DT_MOVETAB = 0x6ffffefe,
24046 DT_SYMINFO = 0x6ffffeff,
24048 DT_VERSYM = 0x6ffffff0,
24049 DT_RELACOUNT= 0x6ffffff9,
24050 DT_RELCOUNT = 0x6ffffffa,
24051 DT_FLAGS_1 = 0x6ffffffb,
24052 DT_VERDEF = 0x6ffffffc,
24053 DT_VERDEFNUM= 0x6ffffffd,
24054 DT_VERNEED = 0x6ffffffe,
24055 DT_VERNEEDNUM=0x6fffffff,
24057 DT_AUXILIARY= 0x7ffffffd,
24058 DT_FILTER = 0x7fffffff
24070#if !defined(SWIG) && !defined(_MSC_VER)
24071 __attribute__((packed))
24079#if !defined(SWIG) && !defined(_MSC_VER)
24080 __attribute__((packed))
24150 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
24153 static std::string
toString(SgAsmElfDynamicEntry::EntryType);
24159 static std::string to_string(SgAsmElfDynamicEntry::EntryType) ROSE_DEPRECATED(
"use toString");
24177#ifdef DOCUMENTATION
24186DECLARE_LEAF_CLASS(AsmDwarfWithStmt);
24187IS_SERIALIZABLE(AsmDwarfWithStmt);
24189#ifndef DOCUMENTATION
24190AsmDwarfWithStmt.useSmallHeader(
true);
24193#ifdef DOCUMENTATION
24197 DECLARE_OTHERS(AsmDwarfWithStmt);
24198#if defined(SgAsmDwarfWithStmt_OTHERS) || defined(DOCUMENTATION)
24201#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24203 friend class boost::serialization::access;
24206 void serialize(S &s,
const unsigned ) {
24224 uint64_t
const& offset,
24225 uint64_t
const& overall_offset);
24236#ifdef DOCUMENTATION
24245DECLARE_LEAF_CLASS(AsmDwarfVolatileType);
24246IS_SERIALIZABLE(AsmDwarfVolatileType);
24248#ifndef DOCUMENTATION
24249AsmDwarfVolatileType.useSmallHeader(
true);
24252#ifdef DOCUMENTATION
24256 DECLARE_OTHERS(AsmDwarfVolatileType);
24257#if defined(SgAsmDwarfVolatileType_OTHERS) || defined(DOCUMENTATION)
24260#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24262 friend class boost::serialization::access;
24265 void serialize(S &s,
const unsigned ) {
24283 uint64_t
const& offset,
24284 uint64_t
const& overall_offset);
24295#ifdef DOCUMENTATION
24304DECLARE_LEAF_CLASS(AsmDwarfVariantPart);
24305IS_SERIALIZABLE(AsmDwarfVariantPart);
24307#ifndef DOCUMENTATION
24308AsmDwarfVariantPart.useSmallHeader(
true);
24311#ifdef DOCUMENTATION
24315 DECLARE_OTHERS(AsmDwarfVariantPart);
24316#if defined(SgAsmDwarfVariantPart_OTHERS) || defined(DOCUMENTATION)
24319#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24321 friend class boost::serialization::access;
24324 void serialize(S &s,
const unsigned ) {
24342 uint64_t
const& offset,
24343 uint64_t
const& overall_offset);
24354#ifdef DOCUMENTATION
24363DECLARE_LEAF_CLASS(AsmDwarfVariant);
24364IS_SERIALIZABLE(AsmDwarfVariant);
24366#ifndef DOCUMENTATION
24367AsmDwarfVariant.useSmallHeader(
true);
24370#ifdef DOCUMENTATION
24374 DECLARE_OTHERS(AsmDwarfVariant);
24375#if defined(SgAsmDwarfVariant_OTHERS) || defined(DOCUMENTATION)
24378#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24380 friend class boost::serialization::access;
24383 void serialize(S &s,
const unsigned ) {
24401 uint64_t
const& offset,
24402 uint64_t
const& overall_offset);
24413#ifdef DOCUMENTATION
24422DECLARE_LEAF_CLASS(AsmDwarfVariable);
24423IS_SERIALIZABLE(AsmDwarfVariable);
24425#ifndef DOCUMENTATION
24426AsmDwarfVariable.useSmallHeader(
true);
24429#ifdef DOCUMENTATION
24433 DECLARE_OTHERS(AsmDwarfVariable);
24434#if defined(SgAsmDwarfVariable_OTHERS) || defined(DOCUMENTATION)
24437#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24439 friend class boost::serialization::access;
24442 void serialize(S &s,
const unsigned ) {
24460 uint64_t
const& offset,
24461 uint64_t
const& overall_offset);
24472#ifdef DOCUMENTATION
24481DECLARE_LEAF_CLASS(AsmDwarfUpcStrictType);
24482IS_SERIALIZABLE(AsmDwarfUpcStrictType);
24484#ifndef DOCUMENTATION
24485AsmDwarfUpcStrictType.useSmallHeader(
true);
24488#ifdef DOCUMENTATION
24492 DECLARE_OTHERS(AsmDwarfUpcStrictType);
24493#if defined(SgAsmDwarfUpcStrictType_OTHERS) || defined(DOCUMENTATION)
24496#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24498 friend class boost::serialization::access;
24501 void serialize(S &s,
const unsigned ) {
24519 uint64_t
const& offset,
24520 uint64_t
const& overall_offset);
24531#ifdef DOCUMENTATION
24540DECLARE_LEAF_CLASS(AsmDwarfUpcSharedType);
24541IS_SERIALIZABLE(AsmDwarfUpcSharedType);
24543#ifndef DOCUMENTATION
24544AsmDwarfUpcSharedType.useSmallHeader(
true);
24547#ifdef DOCUMENTATION
24551 DECLARE_OTHERS(AsmDwarfUpcSharedType);
24552#if defined(SgAsmDwarfUpcSharedType_OTHERS) || defined(DOCUMENTATION)
24555#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24557 friend class boost::serialization::access;
24560 void serialize(S &s,
const unsigned ) {
24578 uint64_t
const& offset,
24579 uint64_t
const& overall_offset);
24590#ifdef DOCUMENTATION
24599DECLARE_LEAF_CLASS(AsmDwarfUpcRelaxedType);
24600IS_SERIALIZABLE(AsmDwarfUpcRelaxedType);
24602#ifndef DOCUMENTATION
24603AsmDwarfUpcRelaxedType.useSmallHeader(
true);
24606#ifdef DOCUMENTATION
24610 DECLARE_OTHERS(AsmDwarfUpcRelaxedType);
24611#if defined(SgAsmDwarfUpcRelaxedType_OTHERS) || defined(DOCUMENTATION)
24614#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24616 friend class boost::serialization::access;
24619 void serialize(S &s,
const unsigned ) {
24637 uint64_t
const& offset,
24638 uint64_t
const& overall_offset);
24649#ifdef DOCUMENTATION
24658DECLARE_LEAF_CLASS(AsmDwarfUnspecifiedType);
24659IS_SERIALIZABLE(AsmDwarfUnspecifiedType);
24661#ifndef DOCUMENTATION
24662AsmDwarfUnspecifiedType.useSmallHeader(
true);
24665#ifdef DOCUMENTATION
24669 DECLARE_OTHERS(AsmDwarfUnspecifiedType);
24670#if defined(SgAsmDwarfUnspecifiedType_OTHERS) || defined(DOCUMENTATION)
24673#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24675 friend class boost::serialization::access;
24678 void serialize(S &s,
const unsigned ) {
24696 uint64_t
const& offset,
24697 uint64_t
const& overall_offset);
24708#ifdef DOCUMENTATION
24717DECLARE_LEAF_CLASS(AsmDwarfUnspecifiedParameters);
24718IS_SERIALIZABLE(AsmDwarfUnspecifiedParameters);
24720#ifndef DOCUMENTATION
24721AsmDwarfUnspecifiedParameters.useSmallHeader(
true);
24724#ifdef DOCUMENTATION
24728 DECLARE_OTHERS(AsmDwarfUnspecifiedParameters);
24729#if defined(SgAsmDwarfUnspecifiedParameters_OTHERS) || defined(DOCUMENTATION)
24732#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24734 friend class boost::serialization::access;
24737 void serialize(S &s,
const unsigned ) {
24755 uint64_t
const& offset,
24756 uint64_t
const& overall_offset);
24767#ifdef DOCUMENTATION
24776DECLARE_LEAF_CLASS(AsmDwarfUnknownConstruct);
24777IS_SERIALIZABLE(AsmDwarfUnknownConstruct);
24779#ifndef DOCUMENTATION
24780AsmDwarfUnknownConstruct.useSmallHeader(
true);
24783#ifdef DOCUMENTATION
24787 DECLARE_OTHERS(AsmDwarfUnknownConstruct);
24788#if defined(SgAsmDwarfUnknownConstruct_OTHERS) || defined(DOCUMENTATION)
24791#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24793 friend class boost::serialization::access;
24796 void serialize(S &s,
const unsigned ) {
24814 uint64_t
const& offset,
24815 uint64_t
const& overall_offset);
24826#ifdef DOCUMENTATION
24835DECLARE_LEAF_CLASS(AsmDwarfUnionType);
24836IS_SERIALIZABLE(AsmDwarfUnionType);
24838#ifndef DOCUMENTATION
24839AsmDwarfUnionType.useSmallHeader(
true);
24842DECLARE_HEADERS(AsmDwarfUnionType);
24843#if defined(SgAsmDwarfUnionType_HEADERS) || defined(DOCUMENTATION)
24844#ifdef ROSE_SgAsmDwarfUnionType_IMPL
24845#include <SgAsmDwarfConstructList.h>
24849#ifdef DOCUMENTATION
24853#ifndef DOCUMENTATION
24854 AsmDwarfUnionType.setDataPrototype(
24855 "SgAsmDwarfConstructList*",
"body",
"= NULL",
24856 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
24859 DECLARE_OTHERS(AsmDwarfUnionType);
24860#if defined(SgAsmDwarfUnionType_OTHERS) || defined(DOCUMENTATION)
24863#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24865 friend class boost::serialization::access;
24868 void serialize(S &s,
const unsigned ) {
24871 s & BOOST_SERIALIZATION_NVP(p_body);
24892 uint64_t
const& offset,
24893 uint64_t
const& overall_offset);
24904#ifdef DOCUMENTATION
24913DECLARE_LEAF_CLASS(AsmDwarfTypedef);
24914IS_SERIALIZABLE(AsmDwarfTypedef);
24916#ifndef DOCUMENTATION
24917AsmDwarfTypedef.useSmallHeader(
true);
24920#ifdef DOCUMENTATION
24924 DECLARE_OTHERS(AsmDwarfTypedef);
24925#if defined(SgAsmDwarfTypedef_OTHERS) || defined(DOCUMENTATION)
24928#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24930 friend class boost::serialization::access;
24933 void serialize(S &s,
const unsigned ) {
24951 uint64_t
const& offset,
24952 uint64_t
const& overall_offset);
24963#ifdef DOCUMENTATION
24972DECLARE_LEAF_CLASS(AsmDwarfTryBlock);
24973IS_SERIALIZABLE(AsmDwarfTryBlock);
24975#ifndef DOCUMENTATION
24976AsmDwarfTryBlock.useSmallHeader(
true);
24979#ifdef DOCUMENTATION
24983 DECLARE_OTHERS(AsmDwarfTryBlock);
24984#if defined(SgAsmDwarfTryBlock_OTHERS) || defined(DOCUMENTATION)
24987#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
24989 friend class boost::serialization::access;
24992 void serialize(S &s,
const unsigned ) {
25010 uint64_t
const& offset,
25011 uint64_t
const& overall_offset);
25022#ifdef DOCUMENTATION
25031DECLARE_LEAF_CLASS(AsmDwarfThrownType);
25032IS_SERIALIZABLE(AsmDwarfThrownType);
25034#ifndef DOCUMENTATION
25035AsmDwarfThrownType.useSmallHeader(
true);
25038#ifdef DOCUMENTATION
25042 DECLARE_OTHERS(AsmDwarfThrownType);
25043#if defined(SgAsmDwarfThrownType_OTHERS) || defined(DOCUMENTATION)
25046#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25048 friend class boost::serialization::access;
25051 void serialize(S &s,
const unsigned ) {
25069 uint64_t
const& offset,
25070 uint64_t
const& overall_offset);
25081#ifdef DOCUMENTATION
25090DECLARE_LEAF_CLASS(AsmDwarfTemplateValueParameter);
25091IS_SERIALIZABLE(AsmDwarfTemplateValueParameter);
25093#ifndef DOCUMENTATION
25094AsmDwarfTemplateValueParameter.useSmallHeader(
true);
25097#ifdef DOCUMENTATION
25101 DECLARE_OTHERS(AsmDwarfTemplateValueParameter);
25102#if defined(SgAsmDwarfTemplateValueParameter_OTHERS) || defined(DOCUMENTATION)
25105#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25107 friend class boost::serialization::access;
25110 void serialize(S &s,
const unsigned ) {
25128 uint64_t
const& offset,
25129 uint64_t
const& overall_offset);
25140#ifdef DOCUMENTATION
25149DECLARE_LEAF_CLASS(AsmDwarfTemplateTypeParameter);
25150IS_SERIALIZABLE(AsmDwarfTemplateTypeParameter);
25152#ifndef DOCUMENTATION
25153AsmDwarfTemplateTypeParameter.useSmallHeader(
true);
25156#ifdef DOCUMENTATION
25160 DECLARE_OTHERS(AsmDwarfTemplateTypeParameter);
25161#if defined(SgAsmDwarfTemplateTypeParameter_OTHERS) || defined(DOCUMENTATION)
25164#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25166 friend class boost::serialization::access;
25169 void serialize(S &s,
const unsigned ) {
25187 uint64_t
const& offset,
25188 uint64_t
const& overall_offset);
25199#ifdef DOCUMENTATION
25208DECLARE_LEAF_CLASS(AsmDwarfSubroutineType);
25209IS_SERIALIZABLE(AsmDwarfSubroutineType);
25211#ifndef DOCUMENTATION
25212AsmDwarfSubroutineType.useSmallHeader(
true);
25215DECLARE_HEADERS(AsmDwarfSubroutineType);
25216#if defined(SgAsmDwarfSubroutineType_HEADERS) || defined(DOCUMENTATION)
25217#ifdef ROSE_SgAsmDwarfSubroutineType_IMPL
25218#include <SgAsmDwarfConstructList.h>
25222#ifdef DOCUMENTATION
25226#ifndef DOCUMENTATION
25227 AsmDwarfSubroutineType.setDataPrototype(
25228 "SgAsmDwarfConstructList*",
"body",
"= nullptr",
25229 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
25232 DECLARE_OTHERS(AsmDwarfSubroutineType);
25233#if defined(SgAsmDwarfSubroutineType_OTHERS) || defined(DOCUMENTATION)
25236#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25238 friend class boost::serialization::access;
25241 void serialize(S &s,
const unsigned ) {
25244 s & BOOST_SERIALIZATION_NVP(p_body);
25265 uint64_t
const& offset,
25266 uint64_t
const& overall_offset);
25277#ifdef DOCUMENTATION
25286DECLARE_LEAF_CLASS(AsmDwarfSubrangeType);
25287IS_SERIALIZABLE(AsmDwarfSubrangeType);
25289#ifndef DOCUMENTATION
25290AsmDwarfSubrangeType.useSmallHeader(
true);
25293#ifdef DOCUMENTATION
25297 DECLARE_OTHERS(AsmDwarfSubrangeType);
25298#if defined(SgAsmDwarfSubrangeType_OTHERS) || defined(DOCUMENTATION)
25301#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25303 friend class boost::serialization::access;
25306 void serialize(S &s,
const unsigned ) {
25324 uint64_t
const& offset,
25325 uint64_t
const& overall_offset);
25336#ifdef DOCUMENTATION
25345DECLARE_LEAF_CLASS(AsmDwarfSubprogram);
25346IS_SERIALIZABLE(AsmDwarfSubprogram);
25348#ifndef DOCUMENTATION
25349AsmDwarfSubprogram.useSmallHeader(
true);
25352DECLARE_HEADERS(AsmDwarfSubprogram);
25353#if defined(SgAsmDwarfSubprogram_HEADERS) || defined(DOCUMENTATION)
25354#ifdef ROSE_SgAsmDwarfSubprogram_IMPL
25355#include <SgAsmDwarfConstructList.h>
25359#ifdef DOCUMENTATION
25363#ifndef DOCUMENTATION
25364 AsmDwarfSubprogram.setDataPrototype(
25365 "SgAsmDwarfConstructList*",
"body",
"= NULL",
25366 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
25369 DECLARE_OTHERS(AsmDwarfSubprogram);
25370#if defined(SgAsmDwarfSubprogram_OTHERS) || defined(DOCUMENTATION)
25373#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25375 friend class boost::serialization::access;
25378 void serialize(S &s,
const unsigned ) {
25381 s & BOOST_SERIALIZATION_NVP(p_body);
25402 uint64_t
const& offset,
25403 uint64_t
const& overall_offset);
25414#ifdef DOCUMENTATION
25423DECLARE_LEAF_CLASS(AsmDwarfStructureType);
25424IS_SERIALIZABLE(AsmDwarfStructureType);
25426#ifndef DOCUMENTATION
25427AsmDwarfStructureType.useSmallHeader(
true);
25430DECLARE_HEADERS(AsmDwarfStructureType);
25431#if defined(SgAsmDwarfStructureType_HEADERS) || defined(DOCUMENTATION)
25432#ifdef ROSE_SgAsmDwarfStructureType_IMPL
25433#include <SgAsmDwarfConstructList.h>
25437#ifdef DOCUMENTATION
25441#ifndef DOCUMENTATION
25442 AsmDwarfStructureType.setDataPrototype(
25443 "SgAsmDwarfConstructList*",
"body",
"= nullptr",
25444 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
25447 DECLARE_OTHERS(AsmDwarfStructureType);
25448#if defined(SgAsmDwarfStructureType_OTHERS) || defined(DOCUMENTATION)
25451#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25453 friend class boost::serialization::access;
25456 void serialize(S &s,
const unsigned ) {
25459 s & BOOST_SERIALIZATION_NVP(p_body);
25480 uint64_t
const& offset,
25481 uint64_t
const& overall_offset);
25492#ifdef DOCUMENTATION
25501DECLARE_LEAF_CLASS(AsmDwarfStringType);
25502IS_SERIALIZABLE(AsmDwarfStringType);
25504#ifndef DOCUMENTATION
25505AsmDwarfStringType.useSmallHeader(
true);
25508#ifdef DOCUMENTATION
25512 DECLARE_OTHERS(AsmDwarfStringType);
25513#if defined(SgAsmDwarfStringType_OTHERS) || defined(DOCUMENTATION)
25516#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25518 friend class boost::serialization::access;
25521 void serialize(S &s,
const unsigned ) {
25539 uint64_t
const& offset,
25540 uint64_t
const& overall_offset);
25551#ifdef DOCUMENTATION
25560DECLARE_LEAF_CLASS(AsmDwarfSharedType);
25561IS_SERIALIZABLE(AsmDwarfSharedType);
25563#ifndef DOCUMENTATION
25564AsmDwarfSharedType.useSmallHeader(
true);
25567#ifdef DOCUMENTATION
25571 DECLARE_OTHERS(AsmDwarfSharedType);
25572#if defined(SgAsmDwarfSharedType_OTHERS) || defined(DOCUMENTATION)
25575#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25577 friend class boost::serialization::access;
25580 void serialize(S &s,
const unsigned ) {
25598 uint64_t
const& offset,
25599 uint64_t
const& overall_offset);
25610#ifdef DOCUMENTATION
25619DECLARE_LEAF_CLASS(AsmDwarfSetType);
25620IS_SERIALIZABLE(AsmDwarfSetType);
25622#ifndef DOCUMENTATION
25623AsmDwarfSetType.useSmallHeader(
true);
25626#ifdef DOCUMENTATION
25630 DECLARE_OTHERS(AsmDwarfSetType);
25631#if defined(SgAsmDwarfSetType_OTHERS) || defined(DOCUMENTATION)
25634#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25636 friend class boost::serialization::access;
25639 void serialize(S &s,
const unsigned ) {
25657 uint64_t
const& offset,
25658 uint64_t
const& overall_offset);
25669#ifdef DOCUMENTATION
25678DECLARE_LEAF_CLASS(AsmDwarfRestrictType);
25679IS_SERIALIZABLE(AsmDwarfRestrictType);
25681#ifndef DOCUMENTATION
25682AsmDwarfRestrictType.useSmallHeader(
true);
25685#ifdef DOCUMENTATION
25689 DECLARE_OTHERS(AsmDwarfRestrictType);
25690#if defined(SgAsmDwarfRestrictType_OTHERS) || defined(DOCUMENTATION)
25693#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25695 friend class boost::serialization::access;
25698 void serialize(S &s,
const unsigned ) {
25716 uint64_t
const& offset,
25717 uint64_t
const& overall_offset);
25728#ifdef DOCUMENTATION
25737DECLARE_LEAF_CLASS(AsmDwarfReferenceType);
25738IS_SERIALIZABLE(AsmDwarfReferenceType);
25740#ifndef DOCUMENTATION
25741AsmDwarfReferenceType.useSmallHeader(
true);
25744#ifdef DOCUMENTATION
25748 DECLARE_OTHERS(AsmDwarfReferenceType);
25749#if defined(SgAsmDwarfReferenceType_OTHERS) || defined(DOCUMENTATION)
25752#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25754 friend class boost::serialization::access;
25757 void serialize(S &s,
const unsigned ) {
25775 uint64_t
const& offset,
25776 uint64_t
const& overall_offset);
25787#ifdef DOCUMENTATION
25796DECLARE_LEAF_CLASS(AsmDwarfPtrToMemberType);
25797IS_SERIALIZABLE(AsmDwarfPtrToMemberType);
25799#ifndef DOCUMENTATION
25800AsmDwarfPtrToMemberType.useSmallHeader(
true);
25803#ifdef DOCUMENTATION
25807 DECLARE_OTHERS(AsmDwarfPtrToMemberType);
25808#if defined(SgAsmDwarfPtrToMemberType_OTHERS) || defined(DOCUMENTATION)
25811#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25813 friend class boost::serialization::access;
25816 void serialize(S &s,
const unsigned ) {
25834 uint64_t
const& offset,
25835 uint64_t
const& overall_offset);
25846#ifdef DOCUMENTATION
25855DECLARE_LEAF_CLASS(AsmDwarfPointerType);
25856IS_SERIALIZABLE(AsmDwarfPointerType);
25858#ifndef DOCUMENTATION
25859AsmDwarfPointerType.useSmallHeader(
true);
25862#ifdef DOCUMENTATION
25866 DECLARE_OTHERS(AsmDwarfPointerType);
25867#if defined(SgAsmDwarfPointerType_OTHERS) || defined(DOCUMENTATION)
25870#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25872 friend class boost::serialization::access;
25875 void serialize(S &s,
const unsigned ) {
25893 uint64_t
const& offset,
25894 uint64_t
const& overall_offset);
25905#ifdef DOCUMENTATION
25914DECLARE_LEAF_CLASS(AsmDwarfPartialUnit);
25915IS_SERIALIZABLE(AsmDwarfPartialUnit);
25917#ifndef DOCUMENTATION
25918AsmDwarfPartialUnit.useSmallHeader(
true);
25921#ifdef DOCUMENTATION
25925 DECLARE_OTHERS(AsmDwarfPartialUnit);
25926#if defined(SgAsmDwarfPartialUnit_OTHERS) || defined(DOCUMENTATION)
25929#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25931 friend class boost::serialization::access;
25934 void serialize(S &s,
const unsigned ) {
25952 uint64_t
const& offset,
25953 uint64_t
const& overall_offset);
25964#ifdef DOCUMENTATION
25973DECLARE_LEAF_CLASS(AsmDwarfPackedType);
25974IS_SERIALIZABLE(AsmDwarfPackedType);
25976#ifndef DOCUMENTATION
25977AsmDwarfPackedType.useSmallHeader(
true);
25980#ifdef DOCUMENTATION
25984 DECLARE_OTHERS(AsmDwarfPackedType);
25985#if defined(SgAsmDwarfPackedType_OTHERS) || defined(DOCUMENTATION)
25988#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
25990 friend class boost::serialization::access;
25993 void serialize(S &s,
const unsigned ) {
26011 uint64_t
const& offset,
26012 uint64_t
const& overall_offset);
26023#ifdef DOCUMENTATION
26032DECLARE_LEAF_CLASS(AsmDwarfNamespace);
26033IS_SERIALIZABLE(AsmDwarfNamespace);
26035#ifndef DOCUMENTATION
26036AsmDwarfNamespace.useSmallHeader(
true);
26039DECLARE_HEADERS(AsmDwarfNamespace);
26040#if defined(SgAsmDwarfNamespace_HEADERS) || defined(DOCUMENTATION)
26041#ifdef ROSE_SgAsmDwarfNamespace_IMPL
26042#include <SgAsmDwarfConstructList.h>
26046#ifdef DOCUMENTATION
26050#ifndef DOCUMENTATION
26051 AsmDwarfNamespace.setDataPrototype(
26052 "SgAsmDwarfConstructList*",
"body",
"= NULL",
26053 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
26056 DECLARE_OTHERS(AsmDwarfNamespace);
26057#if defined(SgAsmDwarfNamespace_OTHERS) || defined(DOCUMENTATION)
26060#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26062 friend class boost::serialization::access;
26065 void serialize(S &s,
const unsigned ) {
26068 s & BOOST_SERIALIZATION_NVP(p_body);
26089 uint64_t
const& offset,
26090 uint64_t
const& overall_offset);
26101#ifdef DOCUMENTATION
26110DECLARE_LEAF_CLASS(AsmDwarfNamelistItem);
26111IS_SERIALIZABLE(AsmDwarfNamelistItem);
26113#ifndef DOCUMENTATION
26114AsmDwarfNamelistItem.useSmallHeader(
true);
26117#ifdef DOCUMENTATION
26121 DECLARE_OTHERS(AsmDwarfNamelistItem);
26122#if defined(SgAsmDwarfNamelistItem_OTHERS) || defined(DOCUMENTATION)
26125#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26127 friend class boost::serialization::access;
26130 void serialize(S &s,
const unsigned ) {
26148 uint64_t
const& offset,
26149 uint64_t
const& overall_offset);
26160#ifdef DOCUMENTATION
26169DECLARE_LEAF_CLASS(AsmDwarfNamelist);
26170IS_SERIALIZABLE(AsmDwarfNamelist);
26172#ifndef DOCUMENTATION
26173AsmDwarfNamelist.useSmallHeader(
true);
26176#ifdef DOCUMENTATION
26180 DECLARE_OTHERS(AsmDwarfNamelist);
26181#if defined(SgAsmDwarfNamelist_OTHERS) || defined(DOCUMENTATION)
26184#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26186 friend class boost::serialization::access;
26189 void serialize(S &s,
const unsigned ) {
26207 uint64_t
const& offset,
26208 uint64_t
const& overall_offset);
26219#ifdef DOCUMENTATION
26228DECLARE_LEAF_CLASS(AsmDwarfMutableType);
26229IS_SERIALIZABLE(AsmDwarfMutableType);
26231#ifndef DOCUMENTATION
26232AsmDwarfMutableType.useSmallHeader(
true);
26235#ifdef DOCUMENTATION
26239 DECLARE_OTHERS(AsmDwarfMutableType);
26240#if defined(SgAsmDwarfMutableType_OTHERS) || defined(DOCUMENTATION)
26243#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26245 friend class boost::serialization::access;
26248 void serialize(S &s,
const unsigned ) {
26266 uint64_t
const& offset,
26267 uint64_t
const& overall_offset);
26278#ifdef DOCUMENTATION
26287DECLARE_LEAF_CLASS(AsmDwarfModule);
26288IS_SERIALIZABLE(AsmDwarfModule);
26290#ifndef DOCUMENTATION
26291AsmDwarfModule.useSmallHeader(
true);
26294#ifdef DOCUMENTATION
26298 DECLARE_OTHERS(AsmDwarfModule);
26299#if defined(SgAsmDwarfModule_OTHERS) || defined(DOCUMENTATION)
26302#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26304 friend class boost::serialization::access;
26307 void serialize(S &s,
const unsigned ) {
26325 uint64_t
const& offset,
26326 uint64_t
const& overall_offset);
26337#ifdef DOCUMENTATION
26346DECLARE_LEAF_CLASS(AsmDwarfMember);
26347IS_SERIALIZABLE(AsmDwarfMember);
26349#ifndef DOCUMENTATION
26350AsmDwarfMember.useSmallHeader(
true);
26353#ifdef DOCUMENTATION
26357 DECLARE_OTHERS(AsmDwarfMember);
26358#if defined(SgAsmDwarfMember_OTHERS) || defined(DOCUMENTATION)
26361#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26363 friend class boost::serialization::access;
26366 void serialize(S &s,
const unsigned ) {
26384 uint64_t
const& offset,
26385 uint64_t
const& overall_offset);
26396#ifdef DOCUMENTATION
26405DECLARE_LEAF_CLASS(AsmDwarfMacroList);
26406IS_SERIALIZABLE(AsmDwarfMacroList);
26408#ifndef DOCUMENTATION
26409AsmDwarfMacroList.useSmallHeader(
true);
26412DECLARE_HEADERS(AsmDwarfMacroList);
26413#if defined(SgAsmDwarfMacroList_HEADERS) || defined(DOCUMENTATION)
26414#include <sageContainer.h>
26417#ifdef DOCUMENTATION
26421#ifndef DOCUMENTATION
26422 AsmDwarfMacroList.setDataPrototype(
26423 "SgAsmDwarfMacroPtrList",
"macro_list",
"",
26424 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
26427 DECLARE_OTHERS(AsmDwarfMacroList);
26428#if defined(SgAsmDwarfMacroList_OTHERS) || defined(DOCUMENTATION)
26431#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26433 friend class boost::serialization::access;
26436 void serialize(S &s,
const unsigned ) {
26439 s & BOOST_SERIALIZATION_NVP(p_macro_list);
26445 SgAsmDwarfMacroPtrList
const& get_macro_list()
const;
26446 void set_macro_list(SgAsmDwarfMacroPtrList
const&);
26465#ifdef DOCUMENTATION
26474DECLARE_LEAF_CLASS(AsmDwarfMacro);
26475IS_SERIALIZABLE(AsmDwarfMacro);
26477#ifndef DOCUMENTATION
26478AsmDwarfMacro.useSmallHeader(
true);
26481#ifdef DOCUMENTATION
26485#ifndef DOCUMENTATION
26486 AsmDwarfMacro.setDataPrototype(
26487 "std::string",
"macro_string",
"",
26488 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
26491 DECLARE_OTHERS(AsmDwarfMacro);
26492#if defined(SgAsmDwarfMacro_OTHERS) || defined(DOCUMENTATION)
26495#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26497 friend class boost::serialization::access;
26500 void serialize(S &s,
const unsigned ) {
26503 s & BOOST_SERIALIZATION_NVP(p_macro_string);
26509 std::string
const& get_macro_string()
const;
26510 void set_macro_string(std::string
const&);
26529#ifdef DOCUMENTATION
26538DECLARE_LEAF_CLASS(AsmDwarfLineList);
26539IS_SERIALIZABLE(AsmDwarfLineList);
26541#ifndef DOCUMENTATION
26542AsmDwarfLineList.useSmallHeader(
true);
26545DECLARE_HEADERS(AsmDwarfLineList);
26546#if defined(SgAsmDwarfLineList_HEADERS) || defined(DOCUMENTATION)
26547#include <sageContainer.h>
26550#ifdef DOCUMENTATION
26554#ifndef DOCUMENTATION
26555 AsmDwarfLineList.setDataPrototype(
26556 "SgAsmDwarfLinePtrList",
"line_list",
"",
26557 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
26560 DECLARE_OTHERS(AsmDwarfLineList);
26561#if defined(SgAsmDwarfLineList_OTHERS) || defined(DOCUMENTATION)
26564#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26566 friend class boost::serialization::access;
26569 void serialize(S &s,
const unsigned ) {
26572 s & BOOST_SERIALIZATION_NVP(p_line_list);
26578 SgAsmDwarfLinePtrList
const& get_line_list()
const;
26579 SgAsmDwarfLinePtrList& get_line_list();
26580 void set_line_list(SgAsmDwarfLinePtrList
const&);
26584 AsmDwarfLineList.setDataPrototype(
"SgInstructionAddressSourcePositionMapPtrList",
"instructionToSourceMap",
"",
26585 NO_CONSTRUCTOR_PARAMETER, BUILD_LIST_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE);
26586 AsmDwarfLineList.setDataPrototype(
"SgSourcePositionInstructionAddressMapPtrList",
"sourceToInstructionMap",
"",
26587 NO_CONSTRUCTOR_PARAMETER, BUILD_LIST_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE);
26598 static std::pair<uint64_t,uint64_t> instructionRange();
26599 static std::pair<LineColumnFilePosition,LineColumnFilePosition> sourceCodeRange(
int file_id );
26601 static uint64_t sourceCodeToAddress ( FileIdLineColumnFilePosition sourcePosition );
26602 static FileIdLineColumnFilePosition addressToSourceCode ( uint64_t address );
26620#ifdef DOCUMENTATION
26629DECLARE_LEAF_CLASS(AsmDwarfLine);
26630IS_SERIALIZABLE(AsmDwarfLine);
26632#ifndef DOCUMENTATION
26633AsmDwarfLine.useSmallHeader(
true);
26636#ifdef DOCUMENTATION
26640#ifndef DOCUMENTATION
26641 AsmDwarfLine.setDataPrototype(
26642 "uint64_t",
"address",
"= 0",
26643 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
26646#ifndef DOCUMENTATION
26647 AsmDwarfLine.setDataPrototype(
26648 "int",
"file_id",
"= -2",
26649 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
26652#ifndef DOCUMENTATION
26653 AsmDwarfLine.setDataPrototype(
26654 "int",
"line",
"= 0",
26655 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
26658#ifndef DOCUMENTATION
26659 AsmDwarfLine.setDataPrototype(
26660 "int",
"column",
"= 0",
26661 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
26664 DECLARE_OTHERS(AsmDwarfLine);
26665#if defined(SgAsmDwarfLine_OTHERS) || defined(DOCUMENTATION)
26668#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26670 friend class boost::serialization::access;
26673 void serialize(S &s,
const unsigned ) {
26676 s & BOOST_SERIALIZATION_NVP(p_address);
26677 s & BOOST_SERIALIZATION_NVP(p_file_id);
26678 s & BOOST_SERIALIZATION_NVP(p_line);
26679 s & BOOST_SERIALIZATION_NVP(p_column);
26685 uint64_t
const& get_address()
const;
26686 void set_address(uint64_t
const&);
26690 int const& get_file_id()
const;
26691 void set_file_id(
int const&);
26694 int const& get_line()
const;
26695 void set_line(
int const&);
26698 int const& get_column()
const;
26699 void set_column(
int const&);
26712 int const& file_id,
26714 int const& column);
26725#ifdef DOCUMENTATION
26734DECLARE_LEAF_CLASS(AsmDwarfLexicalBlock);
26735IS_SERIALIZABLE(AsmDwarfLexicalBlock);
26737#ifndef DOCUMENTATION
26738AsmDwarfLexicalBlock.useSmallHeader(
true);
26741DECLARE_HEADERS(AsmDwarfLexicalBlock);
26742#if defined(SgAsmDwarfLexicalBlock_HEADERS) || defined(DOCUMENTATION)
26743#ifdef ROSE_SgAsmDwarfLexicalBlock_IMPL
26744#include <SgAsmDwarfConstructList.h>
26748#ifdef DOCUMENTATION
26752#ifndef DOCUMENTATION
26753 AsmDwarfLexicalBlock.setDataPrototype(
26754 "SgAsmDwarfConstructList*",
"body",
"= nullptr",
26755 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
26758 DECLARE_OTHERS(AsmDwarfLexicalBlock);
26759#if defined(SgAsmDwarfLexicalBlock_OTHERS) || defined(DOCUMENTATION)
26762#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26764 friend class boost::serialization::access;
26767 void serialize(S &s,
const unsigned ) {
26770 s & BOOST_SERIALIZATION_NVP(p_body);
26791 uint64_t
const& offset,
26792 uint64_t
const& overall_offset);
26803#ifdef DOCUMENTATION
26812DECLARE_LEAF_CLASS(AsmDwarfLabel);
26813IS_SERIALIZABLE(AsmDwarfLabel);
26815#ifndef DOCUMENTATION
26816AsmDwarfLabel.useSmallHeader(
true);
26819#ifdef DOCUMENTATION
26823 DECLARE_OTHERS(AsmDwarfLabel);
26824#if defined(SgAsmDwarfLabel_OTHERS) || defined(DOCUMENTATION)
26827#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26829 friend class boost::serialization::access;
26832 void serialize(S &s,
const unsigned ) {
26850 uint64_t
const& offset,
26851 uint64_t
const& overall_offset);
26862#ifdef DOCUMENTATION
26871DECLARE_LEAF_CLASS(AsmDwarfInterfaceType);
26872IS_SERIALIZABLE(AsmDwarfInterfaceType);
26874#ifndef DOCUMENTATION
26875AsmDwarfInterfaceType.useSmallHeader(
true);
26878#ifdef DOCUMENTATION
26882 DECLARE_OTHERS(AsmDwarfInterfaceType);
26883#if defined(SgAsmDwarfInterfaceType_OTHERS) || defined(DOCUMENTATION)
26886#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26888 friend class boost::serialization::access;
26891 void serialize(S &s,
const unsigned ) {
26909 uint64_t
const& offset,
26910 uint64_t
const& overall_offset);
26921#ifdef DOCUMENTATION
26930DECLARE_LEAF_CLASS(AsmDwarfInlinedSubroutine);
26931IS_SERIALIZABLE(AsmDwarfInlinedSubroutine);
26933#ifndef DOCUMENTATION
26934AsmDwarfInlinedSubroutine.useSmallHeader(
true);
26937DECLARE_HEADERS(AsmDwarfInlinedSubroutine);
26938#if defined(SgAsmDwarfInlinedSubroutine_HEADERS) || defined(DOCUMENTATION)
26939#ifdef ROSE_SgAsmDwarfInlinedSubroutine_IMPL
26940#include <SgAsmDwarfConstructList.h>
26944#ifdef DOCUMENTATION
26948#ifndef DOCUMENTATION
26949 AsmDwarfInlinedSubroutine.setDataPrototype(
26950 "SgAsmDwarfConstructList*",
"body",
"= nullptr",
26951 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
26954 DECLARE_OTHERS(AsmDwarfInlinedSubroutine);
26955#if defined(SgAsmDwarfInlinedSubroutine_OTHERS) || defined(DOCUMENTATION)
26958#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
26960 friend class boost::serialization::access;
26963 void serialize(S &s,
const unsigned ) {
26966 s & BOOST_SERIALIZATION_NVP(p_body);
26987 uint64_t
const& offset,
26988 uint64_t
const& overall_offset);
26999#ifdef DOCUMENTATION
27008DECLARE_LEAF_CLASS(AsmDwarfInheritance);
27009IS_SERIALIZABLE(AsmDwarfInheritance);
27011#ifndef DOCUMENTATION
27012AsmDwarfInheritance.useSmallHeader(
true);
27015#ifdef DOCUMENTATION
27019 DECLARE_OTHERS(AsmDwarfInheritance);
27020#if defined(SgAsmDwarfInheritance_OTHERS) || defined(DOCUMENTATION)
27023#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27025 friend class boost::serialization::access;
27028 void serialize(S &s,
const unsigned ) {
27046 uint64_t
const& offset,
27047 uint64_t
const& overall_offset);
27058#ifdef DOCUMENTATION
27067DECLARE_LEAF_CLASS(AsmDwarfImportedUnit);
27068IS_SERIALIZABLE(AsmDwarfImportedUnit);
27070#ifndef DOCUMENTATION
27071AsmDwarfImportedUnit.useSmallHeader(
true);
27074#ifdef DOCUMENTATION
27078 DECLARE_OTHERS(AsmDwarfImportedUnit);
27079#if defined(SgAsmDwarfImportedUnit_OTHERS) || defined(DOCUMENTATION)
27082#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27084 friend class boost::serialization::access;
27087 void serialize(S &s,
const unsigned ) {
27105 uint64_t
const& offset,
27106 uint64_t
const& overall_offset);
27117#ifdef DOCUMENTATION
27126DECLARE_LEAF_CLASS(AsmDwarfImportedModule);
27127IS_SERIALIZABLE(AsmDwarfImportedModule);
27129#ifndef DOCUMENTATION
27130AsmDwarfImportedModule.useSmallHeader(
true);
27133#ifdef DOCUMENTATION
27137 DECLARE_OTHERS(AsmDwarfImportedModule);
27138#if defined(SgAsmDwarfImportedModule_OTHERS) || defined(DOCUMENTATION)
27141#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27143 friend class boost::serialization::access;
27146 void serialize(S &s,
const unsigned ) {
27164 uint64_t
const& offset,
27165 uint64_t
const& overall_offset);
27176#ifdef DOCUMENTATION
27185DECLARE_LEAF_CLASS(AsmDwarfImportedDeclaration);
27186IS_SERIALIZABLE(AsmDwarfImportedDeclaration);
27188#ifndef DOCUMENTATION
27189AsmDwarfImportedDeclaration.useSmallHeader(
true);
27192#ifdef DOCUMENTATION
27196 DECLARE_OTHERS(AsmDwarfImportedDeclaration);
27197#if defined(SgAsmDwarfImportedDeclaration_OTHERS) || defined(DOCUMENTATION)
27200#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27202 friend class boost::serialization::access;
27205 void serialize(S &s,
const unsigned ) {
27223 uint64_t
const& offset,
27224 uint64_t
const& overall_offset);
27235#ifdef DOCUMENTATION
27244DECLARE_LEAF_CLASS(AsmDwarfFunctionTemplate);
27245IS_SERIALIZABLE(AsmDwarfFunctionTemplate);
27247#ifndef DOCUMENTATION
27248AsmDwarfFunctionTemplate.useSmallHeader(
true);
27251#ifdef DOCUMENTATION
27255 DECLARE_OTHERS(AsmDwarfFunctionTemplate);
27256#if defined(SgAsmDwarfFunctionTemplate_OTHERS) || defined(DOCUMENTATION)
27259#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27261 friend class boost::serialization::access;
27264 void serialize(S &s,
const unsigned ) {
27282 uint64_t
const& offset,
27283 uint64_t
const& overall_offset);
27294#ifdef DOCUMENTATION
27303DECLARE_LEAF_CLASS(AsmDwarfFriend);
27304IS_SERIALIZABLE(AsmDwarfFriend);
27306#ifndef DOCUMENTATION
27307AsmDwarfFriend.useSmallHeader(
true);
27310#ifdef DOCUMENTATION
27314 DECLARE_OTHERS(AsmDwarfFriend);
27315#if defined(SgAsmDwarfFriend_OTHERS) || defined(DOCUMENTATION)
27318#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27320 friend class boost::serialization::access;
27323 void serialize(S &s,
const unsigned ) {
27341 uint64_t
const& offset,
27342 uint64_t
const& overall_offset);
27353#ifdef DOCUMENTATION
27362DECLARE_LEAF_CLASS(AsmDwarfFormatLabel);
27363IS_SERIALIZABLE(AsmDwarfFormatLabel);
27365#ifndef DOCUMENTATION
27366AsmDwarfFormatLabel.useSmallHeader(
true);
27369#ifdef DOCUMENTATION
27373 DECLARE_OTHERS(AsmDwarfFormatLabel);
27374#if defined(SgAsmDwarfFormatLabel_OTHERS) || defined(DOCUMENTATION)
27377#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27379 friend class boost::serialization::access;
27382 void serialize(S &s,
const unsigned ) {
27400 uint64_t
const& offset,
27401 uint64_t
const& overall_offset);
27412#ifdef DOCUMENTATION
27421DECLARE_LEAF_CLASS(AsmDwarfFormalParameter);
27422IS_SERIALIZABLE(AsmDwarfFormalParameter);
27424#ifndef DOCUMENTATION
27425AsmDwarfFormalParameter.useSmallHeader(
true);
27428#ifdef DOCUMENTATION
27432 DECLARE_OTHERS(AsmDwarfFormalParameter);
27433#if defined(SgAsmDwarfFormalParameter_OTHERS) || defined(DOCUMENTATION)
27436#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27438 friend class boost::serialization::access;
27441 void serialize(S &s,
const unsigned ) {
27459 uint64_t
const& offset,
27460 uint64_t
const& overall_offset);
27471#ifdef DOCUMENTATION
27480DECLARE_LEAF_CLASS(AsmDwarfFileType);
27481IS_SERIALIZABLE(AsmDwarfFileType);
27483#ifndef DOCUMENTATION
27484AsmDwarfFileType.useSmallHeader(
true);
27487#ifdef DOCUMENTATION
27491 DECLARE_OTHERS(AsmDwarfFileType);
27492#if defined(SgAsmDwarfFileType_OTHERS) || defined(DOCUMENTATION)
27495#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27497 friend class boost::serialization::access;
27500 void serialize(S &s,
const unsigned ) {
27518 uint64_t
const& offset,
27519 uint64_t
const& overall_offset);
27530#ifdef DOCUMENTATION
27539DECLARE_LEAF_CLASS(AsmDwarfEnumerator);
27540IS_SERIALIZABLE(AsmDwarfEnumerator);
27542#ifndef DOCUMENTATION
27543AsmDwarfEnumerator.useSmallHeader(
true);
27546#ifdef DOCUMENTATION
27550 DECLARE_OTHERS(AsmDwarfEnumerator);
27551#if defined(SgAsmDwarfEnumerator_OTHERS) || defined(DOCUMENTATION)
27554#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27556 friend class boost::serialization::access;
27559 void serialize(S &s,
const unsigned ) {
27577 uint64_t
const& offset,
27578 uint64_t
const& overall_offset);
27589#ifdef DOCUMENTATION
27598DECLARE_LEAF_CLASS(AsmDwarfEnumerationType);
27599IS_SERIALIZABLE(AsmDwarfEnumerationType);
27601#ifndef DOCUMENTATION
27602AsmDwarfEnumerationType.useSmallHeader(
true);
27605DECLARE_HEADERS(AsmDwarfEnumerationType);
27606#if defined(SgAsmDwarfEnumerationType_HEADERS) || defined(DOCUMENTATION)
27607#ifdef ROSE_SgAsmDwarfEnumerationType_IMPL
27608#include <SgAsmDwarfConstructList.h>
27612#ifdef DOCUMENTATION
27616#ifndef DOCUMENTATION
27617 AsmDwarfEnumerationType.setDataPrototype(
27618 "SgAsmDwarfConstructList*",
"body",
"= NULL",
27619 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
27622 DECLARE_OTHERS(AsmDwarfEnumerationType);
27623#if defined(SgAsmDwarfEnumerationType_OTHERS) || defined(DOCUMENTATION)
27626#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27628 friend class boost::serialization::access;
27631 void serialize(S &s,
const unsigned ) {
27634 s & BOOST_SERIALIZATION_NVP(p_body);
27655 uint64_t
const& offset,
27656 uint64_t
const& overall_offset);
27667#ifdef DOCUMENTATION
27676DECLARE_LEAF_CLASS(AsmDwarfEntryPoint);
27677IS_SERIALIZABLE(AsmDwarfEntryPoint);
27679#ifndef DOCUMENTATION
27680AsmDwarfEntryPoint.useSmallHeader(
true);
27683#ifdef DOCUMENTATION
27687 DECLARE_OTHERS(AsmDwarfEntryPoint);
27688#if defined(SgAsmDwarfEntryPoint_OTHERS) || defined(DOCUMENTATION)
27691#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27693 friend class boost::serialization::access;
27696 void serialize(S &s,
const unsigned ) {
27714 uint64_t
const& offset,
27715 uint64_t
const& overall_offset);
27726#ifdef DOCUMENTATION
27735DECLARE_LEAF_CLASS(AsmDwarfDwarfProcedure);
27736IS_SERIALIZABLE(AsmDwarfDwarfProcedure);
27738#ifndef DOCUMENTATION
27739AsmDwarfDwarfProcedure.useSmallHeader(
true);
27742#ifdef DOCUMENTATION
27746 DECLARE_OTHERS(AsmDwarfDwarfProcedure);
27747#if defined(SgAsmDwarfDwarfProcedure_OTHERS) || defined(DOCUMENTATION)
27750#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27752 friend class boost::serialization::access;
27755 void serialize(S &s,
const unsigned ) {
27773 uint64_t
const& offset,
27774 uint64_t
const& overall_offset);
27785#ifdef DOCUMENTATION
27794DECLARE_LEAF_CLASS(AsmDwarfConstType);
27795IS_SERIALIZABLE(AsmDwarfConstType);
27797#ifndef DOCUMENTATION
27798AsmDwarfConstType.useSmallHeader(
true);
27801#ifdef DOCUMENTATION
27805 DECLARE_OTHERS(AsmDwarfConstType);
27806#if defined(SgAsmDwarfConstType_OTHERS) || defined(DOCUMENTATION)
27809#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27811 friend class boost::serialization::access;
27814 void serialize(S &s,
const unsigned ) {
27832 uint64_t
const& offset,
27833 uint64_t
const& overall_offset);
27844#ifdef DOCUMENTATION
27853DECLARE_LEAF_CLASS(AsmDwarfConstructList);
27854IS_SERIALIZABLE(AsmDwarfConstructList);
27856#ifndef DOCUMENTATION
27857AsmDwarfConstructList.useSmallHeader(
true);
27860DECLARE_HEADERS(AsmDwarfConstructList);
27861#if defined(SgAsmDwarfConstructList_HEADERS) || defined(DOCUMENTATION)
27862#include <sageContainer.h>
27865#ifdef DOCUMENTATION
27869#ifndef DOCUMENTATION
27870 AsmDwarfConstructList.setDataPrototype(
27871 "SgAsmDwarfConstructPtrList",
"list",
"",
27872 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
27875 DECLARE_OTHERS(AsmDwarfConstructList);
27876#if defined(SgAsmDwarfConstructList_OTHERS) || defined(DOCUMENTATION)
27879#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27881 friend class boost::serialization::access;
27884 void serialize(S &s,
const unsigned ) {
27887 s & BOOST_SERIALIZATION_NVP(p_list);
27893 SgAsmDwarfConstructPtrList
const& get_list()
const;
27894 SgAsmDwarfConstructPtrList& get_list();
27895 void set_list(SgAsmDwarfConstructPtrList
const&);
27914#ifdef DOCUMENTATION
27923DECLARE_LEAF_CLASS(AsmDwarfConstant);
27924IS_SERIALIZABLE(AsmDwarfConstant);
27926#ifndef DOCUMENTATION
27927AsmDwarfConstant.useSmallHeader(
true);
27930#ifdef DOCUMENTATION
27934 DECLARE_OTHERS(AsmDwarfConstant);
27935#if defined(SgAsmDwarfConstant_OTHERS) || defined(DOCUMENTATION)
27938#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27940 friend class boost::serialization::access;
27943 void serialize(S &s,
const unsigned ) {
27961 uint64_t
const& offset,
27962 uint64_t
const& overall_offset);
27973#ifdef DOCUMENTATION
27982DECLARE_LEAF_CLASS(AsmDwarfCondition);
27983IS_SERIALIZABLE(AsmDwarfCondition);
27985#ifndef DOCUMENTATION
27986AsmDwarfCondition.useSmallHeader(
true);
27989#ifdef DOCUMENTATION
27993 DECLARE_OTHERS(AsmDwarfCondition);
27994#if defined(SgAsmDwarfCondition_OTHERS) || defined(DOCUMENTATION)
27997#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
27999 friend class boost::serialization::access;
28002 void serialize(S &s,
const unsigned ) {
28020 uint64_t
const& offset,
28021 uint64_t
const& overall_offset);
28032#ifdef DOCUMENTATION
28041DECLARE_LEAF_CLASS(AsmDwarfCompilationUnitList);
28042IS_SERIALIZABLE(AsmDwarfCompilationUnitList);
28044#ifndef DOCUMENTATION
28045AsmDwarfCompilationUnitList.useSmallHeader(
true);
28048DECLARE_HEADERS(AsmDwarfCompilationUnitList);
28049#if defined(SgAsmDwarfCompilationUnitList_HEADERS) || defined(DOCUMENTATION)
28050#include <sageContainer.h>
28053#ifdef DOCUMENTATION
28057#ifndef DOCUMENTATION
28058 AsmDwarfCompilationUnitList.setDataPrototype(
28059 "SgAsmDwarfCompilationUnitPtrList",
"cu_list",
"",
28060 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
28063 DECLARE_OTHERS(AsmDwarfCompilationUnitList);
28064#if defined(SgAsmDwarfCompilationUnitList_OTHERS) || defined(DOCUMENTATION)
28067#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
28069 friend class boost::serialization::access;
28072 void serialize(S &s,
const unsigned ) {
28075 s & BOOST_SERIALIZATION_NVP(p_cu_list);
28081 SgAsmDwarfCompilationUnitPtrList
const& get_cu_list()
const;
28082 SgAsmDwarfCompilationUnitPtrList& get_cu_list();
28083 void set_cu_list(SgAsmDwarfCompilationUnitPtrList
const&);
28102#ifdef DOCUMENTATION
28111DECLARE_LEAF_CLASS(AsmDwarfCompilationUnit);
28112IS_SERIALIZABLE(AsmDwarfCompilationUnit);
28114#ifndef DOCUMENTATION
28115AsmDwarfCompilationUnit.useSmallHeader(
true);
28118DECLARE_HEADERS(AsmDwarfCompilationUnit);
28119#if defined(SgAsmDwarfCompilationUnit_HEADERS) || defined(DOCUMENTATION)
28120#ifdef ROSE_SgAsmDwarfCompilationUnit_IMPL
28121#include <SgAsmDwarfConstructList.h>
28122#include <SgAsmDwarfLineList.h>
28123#include <SgAsmDwarfMacroList.h>
28127#ifdef DOCUMENTATION
28131#ifndef DOCUMENTATION
28132 AsmDwarfCompilationUnit.setDataPrototype(
28133 "std::string",
"producer",
"",
28134 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28137#ifndef DOCUMENTATION
28138 AsmDwarfCompilationUnit.setDataPrototype(
28139 "std::string",
"language",
"",
28140 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28143#ifndef DOCUMENTATION
28144 AsmDwarfCompilationUnit.setDataPrototype(
28145 "uint64_t",
"low_pc",
"= 0",
28146 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28149#ifndef DOCUMENTATION
28150 AsmDwarfCompilationUnit.setDataPrototype(
28151 "uint64_t",
"hi_pc",
"= 0",
28152 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28155#ifndef DOCUMENTATION
28156 AsmDwarfCompilationUnit.setDataPrototype(
28157 "int",
"version_stamp",
"= 0",
28158 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28161#ifndef DOCUMENTATION
28162 AsmDwarfCompilationUnit.setDataPrototype(
28163 "uint64_t",
"abbrev_offset",
"= 0",
28164 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28167#ifndef DOCUMENTATION
28168 AsmDwarfCompilationUnit.setDataPrototype(
28169 "uint64_t",
"address_size",
"= 0",
28170 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28173#ifndef DOCUMENTATION
28174 AsmDwarfCompilationUnit.setDataPrototype(
28175 "uint64_t",
"offset_length",
"= 0",
28176 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28179#ifndef DOCUMENTATION
28180 AsmDwarfCompilationUnit.setDataPrototype(
28181 "SgAsmDwarfLineList*",
"line_info",
"= nullptr",
28182 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
28185#ifndef DOCUMENTATION
28186 AsmDwarfCompilationUnit.setDataPrototype(
28187 "SgAsmDwarfConstructList*",
"language_constructs",
"= nullptr",
28188 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
28191#ifndef DOCUMENTATION
28192 AsmDwarfCompilationUnit.setDataPrototype(
28193 "SgAsmDwarfMacroList*",
"macro_info",
"= nullptr",
28194 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
28197 DECLARE_OTHERS(AsmDwarfCompilationUnit);
28198#if defined(SgAsmDwarfCompilationUnit_OTHERS) || defined(DOCUMENTATION)
28201#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
28203 friend class boost::serialization::access;
28206 void serialize(S &s,
const unsigned ) {
28209 s & BOOST_SERIALIZATION_NVP(p_producer);
28210 s & BOOST_SERIALIZATION_NVP(p_language);
28211 s & BOOST_SERIALIZATION_NVP(p_low_pc);
28212 s & BOOST_SERIALIZATION_NVP(p_hi_pc);
28213 s & BOOST_SERIALIZATION_NVP(p_version_stamp);
28214 s & BOOST_SERIALIZATION_NVP(p_abbrev_offset);
28215 s & BOOST_SERIALIZATION_NVP(p_address_size);
28216 s & BOOST_SERIALIZATION_NVP(p_offset_length);
28217 s & BOOST_SERIALIZATION_NVP(p_line_info);
28218 s & BOOST_SERIALIZATION_NVP(p_language_constructs);
28219 s & BOOST_SERIALIZATION_NVP(p_macro_info);
28225 std::string
const& get_producer()
const;
28226 void set_producer(std::string
const&);
28229 std::string
const& get_language()
const;
28230 void set_language(std::string
const&);
28233 uint64_t
const& get_low_pc()
const;
28234 void set_low_pc(uint64_t
const&);
28237 uint64_t
const& get_hi_pc()
const;
28238 void set_hi_pc(uint64_t
const&);
28241 int const& get_version_stamp()
const;
28242 void set_version_stamp(
int const&);
28245 uint64_t
const& get_abbrev_offset()
const;
28246 void set_abbrev_offset(uint64_t
const&);
28249 uint64_t
const& get_address_size()
const;
28250 void set_address_size(uint64_t
const&);
28253 uint64_t
const& get_offset_length()
const;
28254 void set_offset_length(uint64_t
const&);
28280 uint64_t
const& offset,
28281 uint64_t
const& overall_offset);
28292#ifdef DOCUMENTATION
28301DECLARE_LEAF_CLASS(AsmDwarfCommonInclusion);
28302IS_SERIALIZABLE(AsmDwarfCommonInclusion);
28304#ifndef DOCUMENTATION
28305AsmDwarfCommonInclusion.useSmallHeader(
true);
28308#ifdef DOCUMENTATION
28312 DECLARE_OTHERS(AsmDwarfCommonInclusion);
28313#if defined(SgAsmDwarfCommonInclusion_OTHERS) || defined(DOCUMENTATION)
28316#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
28318 friend class boost::serialization::access;
28321 void serialize(S &s,
const unsigned ) {
28339 uint64_t
const& offset,
28340 uint64_t
const& overall_offset);
28351#ifdef DOCUMENTATION
28360DECLARE_LEAF_CLASS(AsmDwarfCommonBlock);
28361IS_SERIALIZABLE(AsmDwarfCommonBlock);
28363#ifndef DOCUMENTATION
28364AsmDwarfCommonBlock.useSmallHeader(
true);
28367DECLARE_HEADERS(AsmDwarfCommonBlock);
28368#if defined(SgAsmDwarfCommonBlock_HEADERS) || defined(DOCUMENTATION)
28369#ifdef ROSE_SgAsmDwarfCommonBlock_IMPL
28370#include <SgAsmDwarfConstructList.h>
28374#ifdef DOCUMENTATION
28378#ifndef DOCUMENTATION
28379 AsmDwarfCommonBlock.setDataPrototype(
28380 "SgAsmDwarfConstructList*",
"body",
"= NULL",
28381 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
28384 DECLARE_OTHERS(AsmDwarfCommonBlock);
28385#if defined(SgAsmDwarfCommonBlock_OTHERS) || defined(DOCUMENTATION)
28388#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
28390 friend class boost::serialization::access;
28393 void serialize(S &s,
const unsigned ) {
28396 s & BOOST_SERIALIZATION_NVP(p_body);
28417 uint64_t
const& offset,
28418 uint64_t
const& overall_offset);
28429#ifdef DOCUMENTATION
28438DECLARE_LEAF_CLASS(AsmDwarfClassType);
28439IS_SERIALIZABLE(AsmDwarfClassType);
28441#ifndef DOCUMENTATION
28442AsmDwarfClassType.useSmallHeader(
true);
28445DECLARE_HEADERS(AsmDwarfClassType);
28446#if defined(SgAsmDwarfClassType_HEADERS) || defined(DOCUMENTATION)
28447#ifdef ROSE_SgAsmDwarfClassType_IMPL
28448#include <SgAsmDwarfConstructList.h>
28452#ifdef DOCUMENTATION
28456#ifndef DOCUMENTATION
28457 AsmDwarfClassType.setDataPrototype(
28458 "SgAsmDwarfConstructList*",
"body",
"= nullptr",
28459 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
28462 DECLARE_OTHERS(AsmDwarfClassType);
28463#if defined(SgAsmDwarfClassType_OTHERS) || defined(DOCUMENTATION)
28466#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
28468 friend class boost::serialization::access;
28471 void serialize(S &s,
const unsigned ) {
28474 s & BOOST_SERIALIZATION_NVP(p_body);
28495 uint64_t
const& offset,
28496 uint64_t
const& overall_offset);
28507#ifdef DOCUMENTATION
28516DECLARE_LEAF_CLASS(AsmDwarfClassTemplate);
28517IS_SERIALIZABLE(AsmDwarfClassTemplate);
28519#ifndef DOCUMENTATION
28520AsmDwarfClassTemplate.useSmallHeader(
true);
28523#ifdef DOCUMENTATION
28527 DECLARE_OTHERS(AsmDwarfClassTemplate);
28528#if defined(SgAsmDwarfClassTemplate_OTHERS) || defined(DOCUMENTATION)
28531#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
28533 friend class boost::serialization::access;
28536 void serialize(S &s,
const unsigned ) {
28554 uint64_t
const& offset,
28555 uint64_t
const& overall_offset);
28566#ifdef DOCUMENTATION
28575DECLARE_LEAF_CLASS(AsmDwarfCatchBlock);
28576IS_SERIALIZABLE(AsmDwarfCatchBlock);
28578#ifndef DOCUMENTATION
28579AsmDwarfCatchBlock.useSmallHeader(
true);
28582#ifdef DOCUMENTATION
28586 DECLARE_OTHERS(AsmDwarfCatchBlock);
28587#if defined(SgAsmDwarfCatchBlock_OTHERS) || defined(DOCUMENTATION)
28590#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
28592 friend class boost::serialization::access;
28595 void serialize(S &s,
const unsigned ) {
28613 uint64_t
const& offset,
28614 uint64_t
const& overall_offset);
28625#ifdef DOCUMENTATION
28634DECLARE_LEAF_CLASS(AsmDwarfBaseType);
28635IS_SERIALIZABLE(AsmDwarfBaseType);
28637#ifndef DOCUMENTATION
28638AsmDwarfBaseType.useSmallHeader(
true);
28641#ifdef DOCUMENTATION
28645 DECLARE_OTHERS(AsmDwarfBaseType);
28646#if defined(SgAsmDwarfBaseType_OTHERS) || defined(DOCUMENTATION)
28649#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
28651 friend class boost::serialization::access;
28654 void serialize(S &s,
const unsigned ) {
28672 uint64_t
const& offset,
28673 uint64_t
const& overall_offset);
28684#ifdef DOCUMENTATION
28693DECLARE_LEAF_CLASS(AsmDwarfArrayType);
28694IS_SERIALIZABLE(AsmDwarfArrayType);
28696#ifndef DOCUMENTATION
28697AsmDwarfArrayType.useSmallHeader(
true);
28700DECLARE_HEADERS(AsmDwarfArrayType);
28701#if defined(SgAsmDwarfArrayType_HEADERS) || defined(DOCUMENTATION)
28702#ifdef ROSE_SgAsmDwarfArrayType_IMPL
28703#include <SgAsmDwarfConstructList.h>
28707#ifdef DOCUMENTATION
28711#ifndef DOCUMENTATION
28712 AsmDwarfArrayType.setDataPrototype(
28713 "SgAsmDwarfConstructList*",
"body",
"= nullptr",
28714 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
28717 DECLARE_OTHERS(AsmDwarfArrayType);
28718#if defined(SgAsmDwarfArrayType_OTHERS) || defined(DOCUMENTATION)
28721#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
28723 friend class boost::serialization::access;
28726 void serialize(S &s,
const unsigned ) {
28729 s & BOOST_SERIALIZATION_NVP(p_body);
28750 uint64_t
const& offset,
28751 uint64_t
const& overall_offset);
28762#ifdef DOCUMENTATION
28771DECLARE_LEAF_CLASS(AsmDwarfAccessDeclaration);
28772IS_SERIALIZABLE(AsmDwarfAccessDeclaration);
28774#ifndef DOCUMENTATION
28775AsmDwarfAccessDeclaration.useSmallHeader(
true);
28778#ifdef DOCUMENTATION
28782 DECLARE_OTHERS(AsmDwarfAccessDeclaration);
28783#if defined(SgAsmDwarfAccessDeclaration_OTHERS) || defined(DOCUMENTATION)
28786#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
28788 friend class boost::serialization::access;
28791 void serialize(S &s,
const unsigned ) {
28809 uint64_t
const& offset,
28810 uint64_t
const& overall_offset);
28821#ifdef DOCUMENTATION
28830#ifndef DOCUMENTATION
28831AstNodeClass& AsmDwarfConstruct = nonTerminalConstructor(
28832 "AsmDwarfConstruct",
28834 "AsmDwarfConstruct",
28835 "AsmDwarfConstructTag",
28836 SubclassListBuilder()
28837 | AsmDwarfAccessDeclaration
28838 | AsmDwarfArrayType
28840 | AsmDwarfCatchBlock
28841 | AsmDwarfClassTemplate
28842 | AsmDwarfClassType
28843 | AsmDwarfCommonBlock
28844 | AsmDwarfCommonInclusion
28845 | AsmDwarfCompilationUnit
28846 | AsmDwarfCondition
28848 | AsmDwarfConstType
28849 | AsmDwarfDwarfProcedure
28850 | AsmDwarfEntryPoint
28851 | AsmDwarfEnumerationType
28852 | AsmDwarfEnumerator
28854 | AsmDwarfFormalParameter
28855 | AsmDwarfFormatLabel
28857 | AsmDwarfFunctionTemplate
28858 | AsmDwarfImportedDeclaration
28859 | AsmDwarfImportedModule
28860 | AsmDwarfImportedUnit
28861 | AsmDwarfInheritance
28862 | AsmDwarfInlinedSubroutine
28863 | AsmDwarfInterfaceType
28865 | AsmDwarfLexicalBlock
28868 | AsmDwarfMutableType
28870 | AsmDwarfNamelistItem
28871 | AsmDwarfNamespace
28872 | AsmDwarfPackedType
28873 | AsmDwarfPartialUnit
28874 | AsmDwarfPointerType
28875 | AsmDwarfPtrToMemberType
28876 | AsmDwarfReferenceType
28877 | AsmDwarfRestrictType
28879 | AsmDwarfSharedType
28880 | AsmDwarfStringType
28881 | AsmDwarfStructureType
28882 | AsmDwarfSubprogram
28883 | AsmDwarfSubrangeType
28884 | AsmDwarfSubroutineType
28885 | AsmDwarfTemplateTypeParameter
28886 | AsmDwarfTemplateValueParameter
28887 | AsmDwarfThrownType
28890 | AsmDwarfUnionType
28891 | AsmDwarfUnknownConstruct
28892 | AsmDwarfUnspecifiedParameters
28893 | AsmDwarfUnspecifiedType
28894 | AsmDwarfUpcRelaxedType
28895 | AsmDwarfUpcSharedType
28896 | AsmDwarfUpcStrictType
28899 | AsmDwarfVariantPart
28900 | AsmDwarfVolatileType
28903assert(AsmDwarfConstruct.associatedGrammar !=
nullptr);
28904AsmDwarfConstruct.setCppCondition(
"!defined(DOCUMENTATION)");
28905AsmDwarfConstruct.isBoostSerializable(
true);
28906AsmDwarfConstruct.setAutomaticGenerationOfConstructor(
false);
28907AsmDwarfConstruct.setAutomaticGenerationOfDestructor(
false);
28910#ifndef DOCUMENTATION
28911AsmDwarfConstruct.useSmallHeader(
true);
28914#ifdef DOCUMENTATION
28918#ifndef DOCUMENTATION
28919 AsmDwarfConstruct.setDataPrototype(
28920 "int",
"nesting_level",
"= 0",
28921 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28924#ifndef DOCUMENTATION
28925 AsmDwarfConstruct.setDataPrototype(
28926 "uint64_t",
"offset",
"= 0",
28927 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28930#ifndef DOCUMENTATION
28931 AsmDwarfConstruct.setDataPrototype(
28932 "uint64_t",
"overall_offset",
"= 0",
28933 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28936#ifndef DOCUMENTATION
28937 AsmDwarfConstruct.setDataPrototype(
28938 "std::string",
"name",
"",
28939 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28942#ifndef DOCUMENTATION
28943 AsmDwarfConstruct.setDataPrototype(
28944 "SgAsmDwarfLine*",
"source_position",
"= nullptr",
28945 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
28948 DECLARE_OTHERS(AsmDwarfConstruct);
28949#if defined(SgAsmDwarfConstruct_OTHERS) || defined(DOCUMENTATION)
28952#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
28954 friend class boost::serialization::access;
28957 void serialize(S &s,
const unsigned ) {
28960 s & BOOST_SERIALIZATION_NVP(p_nesting_level);
28961 s & BOOST_SERIALIZATION_NVP(p_offset);
28962 s & BOOST_SERIALIZATION_NVP(p_overall_offset);
28963 s & BOOST_SERIALIZATION_NVP(p_name);
28964 s & BOOST_SERIALIZATION_NVP(p_source_position);
28971 int const& get_nesting_level()
const;
28972 void set_nesting_level(
int const&);
28975 uint64_t
const& get_offset()
const;
28976 void set_offset(uint64_t
const&);
28979 uint64_t
const& get_overall_offset()
const;
28980 void set_overall_offset(uint64_t
const&);
28983 std::string
const& get_name()
const;
28984 void set_name(std::string
const&);
29010 uint64_t
const& offset,
29011 uint64_t
const& overall_offset);
29022#ifdef DOCUMENTATION
29031#ifndef DOCUMENTATION
29032AstNodeClass& AsmDwarfInformation = nonTerminalConstructor(
29033 "AsmDwarfInformation",
29035 "AsmDwarfInformation",
29036 "AsmDwarfInformationTag",
29037 SubclassListBuilder()
29038 | AsmDwarfCompilationUnitList
29039 | AsmDwarfConstruct
29040 | AsmDwarfConstructList
29044 | AsmDwarfMacroList
29046assert(AsmDwarfInformation.associatedGrammar !=
nullptr);
29047AsmDwarfInformation.setCppCondition(
"!defined(DOCUMENTATION)");
29048AsmDwarfInformation.isBoostSerializable(
true);
29049AsmDwarfInformation.setAutomaticGenerationOfConstructor(
false);
29050AsmDwarfInformation.setAutomaticGenerationOfDestructor(
false);
29053#ifndef DOCUMENTATION
29054AsmDwarfInformation.useSmallHeader(
true);
29057#ifdef DOCUMENTATION
29061 DECLARE_OTHERS(AsmDwarfInformation);
29062#if defined(SgAsmDwarfInformation_OTHERS) || defined(DOCUMENTATION)
29065#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
29067 friend class boost::serialization::access;
29070 void serialize(S &s,
const unsigned ) {
29094#ifdef DOCUMENTATION
29103DECLARE_LEAF_CLASS(AsmDOSFileHeader);
29104IS_SERIALIZABLE(AsmDOSFileHeader);
29106#ifndef DOCUMENTATION
29107AsmDOSFileHeader.useSmallHeader(
true);
29110DECLARE_HEADERS(AsmDOSFileHeader);
29111#if defined(SgAsmDOSFileHeader_HEADERS) || defined(DOCUMENTATION)
29112#include <Rose/BinaryAnalysis/Address.h>
29115#ifdef DOCUMENTATION
29123#ifndef DOCUMENTATION
29124 AsmDOSFileHeader.setDataPrototype(
29125 "uint16_t",
"e_last_page_size",
"= 0",
29126 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29129#ifndef DOCUMENTATION
29130 AsmDOSFileHeader.setDataPrototype(
29131 "uint16_t",
"e_total_pages",
"= 0",
29132 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29135#ifndef DOCUMENTATION
29136 AsmDOSFileHeader.setDataPrototype(
29137 "uint16_t",
"e_nrelocs",
"= 0",
29138 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29141#ifndef DOCUMENTATION
29142 AsmDOSFileHeader.setDataPrototype(
29143 "uint16_t",
"e_header_paragraphs",
"= 0",
29144 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29147#ifndef DOCUMENTATION
29148 AsmDOSFileHeader.setDataPrototype(
29149 "uint16_t",
"e_minalloc",
"= 0",
29150 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29153#ifndef DOCUMENTATION
29154 AsmDOSFileHeader.setDataPrototype(
29155 "uint16_t",
"e_maxalloc",
"= 0",
29156 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29159#ifndef DOCUMENTATION
29160 AsmDOSFileHeader.setDataPrototype(
29161 "uint16_t",
"e_ss",
"= 0",
29162 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29165#ifndef DOCUMENTATION
29166 AsmDOSFileHeader.setDataPrototype(
29167 "uint16_t",
"e_sp",
"= 0",
29168 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29171#ifndef DOCUMENTATION
29172 AsmDOSFileHeader.setDataPrototype(
29173 "uint16_t",
"e_cksum",
"= 0",
29174 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29177#ifndef DOCUMENTATION
29178 AsmDOSFileHeader.setDataPrototype(
29179 "uint16_t",
"e_ip",
"= 0",
29180 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29183#ifndef DOCUMENTATION
29184 AsmDOSFileHeader.setDataPrototype(
29185 "uint16_t",
"e_cs",
"= 0",
29186 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29189#ifndef DOCUMENTATION
29190 AsmDOSFileHeader.setDataPrototype(
29191 "uint16_t",
"e_overlay",
"= 0",
29192 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29195#ifndef DOCUMENTATION
29196 AsmDOSFileHeader.setDataPrototype(
29197 "Rose::BinaryAnalysis::Address",
"e_relocs_offset",
"= 0",
29198 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29201#ifndef DOCUMENTATION
29202 AsmDOSFileHeader.setDataPrototype(
29203 "unsigned",
"e_res1",
"= 0",
29204 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29207#ifndef DOCUMENTATION
29208 AsmDOSFileHeader.setDataPrototype(
29209 "SgAsmGenericSection*",
"relocs",
"= nullptr",
29210 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29213#ifndef DOCUMENTATION
29214 AsmDOSFileHeader.setDataPrototype(
29215 "SgAsmGenericSection*",
"rm_section",
"= nullptr",
29216 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29219 DECLARE_OTHERS(AsmDOSFileHeader);
29220#if defined(SgAsmDOSFileHeader_OTHERS) || defined(DOCUMENTATION)
29223#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
29225 friend class boost::serialization::access;
29228 void serialize(S &s,
const unsigned ) {
29231 s & BOOST_SERIALIZATION_NVP(p_e_last_page_size);
29232 s & BOOST_SERIALIZATION_NVP(p_e_total_pages);
29233 s & BOOST_SERIALIZATION_NVP(p_e_nrelocs);
29234 s & BOOST_SERIALIZATION_NVP(p_e_header_paragraphs);
29235 s & BOOST_SERIALIZATION_NVP(p_e_minalloc);
29236 s & BOOST_SERIALIZATION_NVP(p_e_maxalloc);
29237 s & BOOST_SERIALIZATION_NVP(p_e_ss);
29238 s & BOOST_SERIALIZATION_NVP(p_e_sp);
29239 s & BOOST_SERIALIZATION_NVP(p_e_cksum);
29240 s & BOOST_SERIALIZATION_NVP(p_e_ip);
29241 s & BOOST_SERIALIZATION_NVP(p_e_cs);
29242 s & BOOST_SERIALIZATION_NVP(p_e_overlay);
29243 s & BOOST_SERIALIZATION_NVP(p_e_relocs_offset);
29244 s & BOOST_SERIALIZATION_NVP(p_e_res1);
29245 s & BOOST_SERIALIZATION_NVP(p_relocs);
29246 s & BOOST_SERIALIZATION_NVP(p_rm_section);
29277#if !defined(SWIG) && !defined(_MSC_VER)
29278 __attribute__((packed))
29286#if !defined(SWIG) && !defined(_MSC_VER)
29287 __attribute__((packed))
29463 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
29490 virtual const char* format_name() const override ROSE_DEPRECATED("use
formatName");
29511#ifdef DOCUMENTATION
29520#ifndef DOCUMENTATION
29521AstNodeClass& AsmGenericHeader = nonTerminalConstructor(
29522 "AsmGenericHeader",
29524 "AsmGenericHeader",
29525 "AsmGenericHeaderTag",
29526 SubclassListBuilder()
29534assert(AsmGenericHeader.associatedGrammar !=
nullptr);
29535AsmGenericHeader.setCppCondition(
"!defined(DOCUMENTATION)");
29536AsmGenericHeader.isBoostSerializable(
true);
29537AsmGenericHeader.setAutomaticGenerationOfConstructor(
false);
29538AsmGenericHeader.setAutomaticGenerationOfDestructor(
false);
29541#ifndef DOCUMENTATION
29542AsmGenericHeader.useSmallHeader(
true);
29545DECLARE_HEADERS(AsmGenericHeader);
29546#if defined(SgAsmGenericHeader_HEADERS) || defined(DOCUMENTATION)
29547#include <Rose/BinaryAnalysis/Address.h>
29548#include <Rose/BinaryAnalysis/ByteOrder.h>
29549#include <Rose/BinaryAnalysis/RelativeVirtualAddress.h>
29550#include <sageContainer.h>
29551#include <SgAsmGenericFormat.h>
29553#ifdef ROSE_SgAsmGenericHeader_IMPL
29554#include <SgAsmGenericDLLList.h>
29555#include <SgAsmGenericSectionList.h>
29562#ifdef DOCUMENTATION
29567#ifndef DOCUMENTATION
29568 AsmGenericHeader.setDataPrototype(
29569 "SgAsmGenericFormat*",
"executableFormat",
"= createAndParent<SgAsmGenericFormat>(this)",
29570 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
29573#ifndef DOCUMENTATION
29574 AsmGenericHeader.setDataPrototype(
29575 "SgCharList",
"magic",
"",
29576 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29579#ifndef DOCUMENTATION
29580 AsmGenericHeader.setDataPrototype(
29581 "SgAsmGenericFormat::InsSetArchitecture",
"isa",
"= SgAsmGenericFormat::ISA_UNSPECIFIED",
29582 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29585#ifndef DOCUMENTATION
29586 AsmGenericHeader.setDataPrototype(
29587 "Rose::BinaryAnalysis::Address",
"baseVa",
"= 0",
29588 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29591#ifndef DOCUMENTATION
29592 AsmGenericHeader.setDataPrototype(
29593 "SgRVAList",
"entryRvas",
"",
29594 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29597#ifndef DOCUMENTATION
29598 AsmGenericHeader.setDataPrototype(
29599 "SgAsmGenericDLLList*",
"dlls",
"= createAndParent<SgAsmGenericDLLList>(this)",
29600 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
29603#ifndef DOCUMENTATION
29604 AsmGenericHeader.setDataPrototype(
29605 "SgAsmGenericSectionList*",
"sections",
"= createAndParent<SgAsmGenericSectionList>(this)",
29606 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
29609 DECLARE_OTHERS(AsmGenericHeader);
29610#if defined(SgAsmGenericHeader_OTHERS) || defined(DOCUMENTATION)
29613#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
29615 friend class boost::serialization::access;
29618 void serialize(S &s,
const unsigned ) {
29621 s & BOOST_SERIALIZATION_NVP(p_executableFormat);
29622 s & BOOST_SERIALIZATION_NVP(p_magic);
29623 s & BOOST_SERIALIZATION_NVP(p_isa);
29624 s & BOOST_SERIALIZATION_NVP(p_baseVa);
29625 s & BOOST_SERIALIZATION_NVP(p_entryRvas);
29626 s & BOOST_SERIALIZATION_NVP(p_dlls);
29627 s & BOOST_SERIALIZATION_NVP(p_sections);
29705 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
29727 size_t get_wordSize()
const;
29770 size_t *nfound=0)
const;
29794 Rose::BinaryAnalysis::Address get_base_va() const ROSE_DEPRECATED("use
get_baseVa");
29795 void set_base_va(
Rose::BinaryAnalysis::Address) ROSE_DEPRECATED("use
set_baseVa");
29796 SgRVAList& get_entry_rvas() ROSE_DEPRECATED("use
get_entryRvas");
29797 const SgRVAList& get_entry_rvas() const ROSE_DEPRECATED("use
get_entryRvas");
29798 void set_entry_rvas(const SgRVAList&) ROSE_DEPRECATED("use
set_entryRvas");
29799 virtual const
char *format_name() const ROSE_DEPRECATED("use
formatName");
29801 Rose::BinaryAnalysis::Address get_entry_rva() const ROSE_DEPRECATED("use
get_entryRva");
29802 void add_entry_rva(const
Rose::BinaryAnalysis::RelativeVirtualAddress&) ROSE_DEPRECATED("use
addEntryRva");
29803 size_t get_word_size() const ROSE_DEPRECATED("use get_wordSize");
29806 SgAsmGenericSectionPtrList get_mapped_sections() const ROSE_DEPRECATED("use
get_mappedSections");
29807 SgAsmGenericSectionPtrList get_sections_by_id(
int) const ROSE_DEPRECATED("use
get_sectionsById");
29808 SgAsmGenericSectionPtrList get_sections_by_name(std::
string,
char=0) const ROSE_DEPRECATED("use
get_sectionsByName");
29809 SgAsmGenericSectionPtrList get_sections_by_offset(
Rose::BinaryAnalysis::Address,
Rose::BinaryAnalysis::Address) const
29811 SgAsmGenericSectionPtrList get_sections_by_rva(
Rose::BinaryAnalysis::Address) const ROSE_DEPRECATED("use
get_sectionsByRva");
29812 SgAsmGenericSectionPtrList get_sections_by_va(
Rose::BinaryAnalysis::Address,
bool) const
29815 SgAsmGenericSection *get_section_by_name(const std::
string&,
char=0,
size_t* =
nullptr) const
29842#ifdef DOCUMENTATION
29851DECLARE_LEAF_CLASS(AsmDOSExtendedHeader);
29852IS_SERIALIZABLE(AsmDOSExtendedHeader);
29854#ifndef DOCUMENTATION
29855AsmDOSExtendedHeader.useSmallHeader(
true);
29858DECLARE_HEADERS(AsmDOSExtendedHeader);
29859#if defined(SgAsmDOSExtendedHeader_HEADERS) || defined(DOCUMENTATION)
29860#include <Rose/BinaryAnalysis/Address.h>
29863#ifdef DOCUMENTATION
29870#ifndef DOCUMENTATION
29871 AsmDOSExtendedHeader.setDataPrototype(
29872 "unsigned",
"e_res1",
"= 0",
29873 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29876#ifndef DOCUMENTATION
29877 AsmDOSExtendedHeader.setDataPrototype(
29878 "unsigned",
"e_oemid",
"= 0",
29879 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29882#ifndef DOCUMENTATION
29883 AsmDOSExtendedHeader.setDataPrototype(
29884 "unsigned",
"e_oeminfo",
"= 0",
29885 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29888#ifndef DOCUMENTATION
29889 AsmDOSExtendedHeader.setDataPrototype(
29890 "unsigned",
"e_res2",
"= 0",
29891 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29894#ifndef DOCUMENTATION
29895 AsmDOSExtendedHeader.setDataPrototype(
29896 "unsigned",
"e_res3",
"= 0",
29897 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29900#ifndef DOCUMENTATION
29901 AsmDOSExtendedHeader.setDataPrototype(
29902 "unsigned",
"e_res4",
"= 0",
29903 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29906#ifndef DOCUMENTATION
29907 AsmDOSExtendedHeader.setDataPrototype(
29908 "unsigned",
"e_res5",
"= 0",
29909 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29912#ifndef DOCUMENTATION
29913 AsmDOSExtendedHeader.setDataPrototype(
29914 "unsigned",
"e_res6",
"= 0",
29915 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29918#ifndef DOCUMENTATION
29919 AsmDOSExtendedHeader.setDataPrototype(
29920 "Rose::BinaryAnalysis::Address",
"e_lfanew",
"= 0",
29921 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
29924 DECLARE_OTHERS(AsmDOSExtendedHeader);
29925#if defined(SgAsmDOSExtendedHeader_OTHERS) || defined(DOCUMENTATION)
29928#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
29930 friend class boost::serialization::access;
29933 void serialize(S &s,
const unsigned ) {
29936 s & BOOST_SERIALIZATION_NVP(p_e_res1);
29937 s & BOOST_SERIALIZATION_NVP(p_e_oemid);
29938 s & BOOST_SERIALIZATION_NVP(p_e_oeminfo);
29939 s & BOOST_SERIALIZATION_NVP(p_e_res2);
29940 s & BOOST_SERIALIZATION_NVP(p_e_res3);
29941 s & BOOST_SERIALIZATION_NVP(p_e_res4);
29942 s & BOOST_SERIALIZATION_NVP(p_e_res5);
29943 s & BOOST_SERIALIZATION_NVP(p_e_res6);
29944 s & BOOST_SERIALIZATION_NVP(p_e_lfanew);
29958 uint16_t e_oeminfo;
29966#if !defined(SWIG) && !defined(_MSC_VER)
29967 __attribute__((packed))
30075 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
30093#ifdef DOCUMENTATION
30102DECLARE_LEAF_CLASS(AsmDirectRegisterExpression);
30103IS_SERIALIZABLE(AsmDirectRegisterExpression);
30105#ifndef DOCUMENTATION
30106AsmDirectRegisterExpression.useSmallHeader(
true);
30109#ifdef DOCUMENTATION
30114 DECLARE_OTHERS(AsmDirectRegisterExpression);
30115#if defined(SgAsmDirectRegisterExpression_OTHERS) || defined(DOCUMENTATION)
30118#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
30120 friend class boost::serialization::access;
30123 void serialize(S &s,
const unsigned ) {
30151#ifdef DOCUMENTATION
30160#ifndef DOCUMENTATION
30161AstNodeClass& AsmRegisterReferenceExpression = nonTerminalConstructor(
30162 "AsmRegisterReferenceExpression",
30164 "AsmRegisterReferenceExpression",
30165 "AsmRegisterReferenceExpressionTag",
30166 SubclassListBuilder()
30167 | AsmDirectRegisterExpression
30168 | AsmIndirectRegisterExpression
30170assert(AsmRegisterReferenceExpression.associatedGrammar !=
nullptr);
30171AsmRegisterReferenceExpression.setCppCondition(
"!defined(DOCUMENTATION)");
30172AsmRegisterReferenceExpression.isBoostSerializable(
true);
30173AsmRegisterReferenceExpression.setAutomaticGenerationOfConstructor(
false);
30174AsmRegisterReferenceExpression.setAutomaticGenerationOfDestructor(
false);
30177#ifndef DOCUMENTATION
30178AsmRegisterReferenceExpression.useSmallHeader(
true);
30181#ifdef DOCUMENTATION
30186#ifndef DOCUMENTATION
30187 AsmRegisterReferenceExpression.setDataPrototype(
30188 "Rose::BinaryAnalysis::RegisterDescriptor",
"descriptor",
"",
30189 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30192#ifndef DOCUMENTATION
30193 AsmRegisterReferenceExpression.setDataPrototype(
30194 "int",
"adjustment",
"= 0",
30195 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30198 DECLARE_OTHERS(AsmRegisterReferenceExpression);
30199#if defined(SgAsmRegisterReferenceExpression_OTHERS) || defined(DOCUMENTATION)
30202#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
30204 friend class boost::serialization::access;
30207 void serialize(S &s,
const unsigned ) {
30210 s & BOOST_SERIALIZATION_NVP(p_descriptor);
30211 s & BOOST_SERIALIZATION_NVP(p_adjustment);
30255#ifdef DOCUMENTATION
30264DECLARE_LEAF_CLASS(AsmControlFlagsExpression);
30265IS_SERIALIZABLE(AsmControlFlagsExpression);
30267#ifndef DOCUMENTATION
30268AsmControlFlagsExpression.useSmallHeader(
true);
30271DECLARE_HEADERS(AsmControlFlagsExpression);
30272#if defined(SgAsmControlFlagsExpression_HEADERS) || defined(DOCUMENTATION)
30276#ifdef DOCUMENTATION
30280#ifndef DOCUMENTATION
30281 AsmControlFlagsExpression.setDataPrototype(
30282 "unsigned long",
"bitFlags",
"= 0",
30283 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30286 DECLARE_OTHERS(AsmControlFlagsExpression);
30287#if defined(SgAsmControlFlagsExpression_OTHERS) || defined(DOCUMENTATION)
30290#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
30292 friend class boost::serialization::access;
30295 void serialize(S &s,
const unsigned ) {
30298 s & BOOST_SERIALIZATION_NVP(p_bitFlags);
30304 unsigned long const& get_bitFlags()
const;
30305 void set_bitFlags(
unsigned long const&);
30307 unsigned long get_bit_flags()
const ROSE_DEPRECATED(
"use get_bitFlags");
30308 void set_bit_flags(
unsigned long) ROSE_DEPRECATED(
"use set_bitFlags");
30326#ifdef DOCUMENTATION
30335#ifndef DOCUMENTATION
30336AstNodeClass& AsmConstantExpression = nonTerminalConstructor(
30337 "AsmConstantExpression",
30339 "AsmConstantExpression",
30340 "AsmConstantExpressionTag",
30341 SubclassListBuilder()
30342 | AsmFloatValueExpression
30343 | AsmIntegerValueExpression
30345assert(AsmConstantExpression.associatedGrammar !=
nullptr);
30346AsmConstantExpression.setCppCondition(
"!defined(DOCUMENTATION)");
30347AsmConstantExpression.isBoostSerializable(
true);
30348AsmConstantExpression.setAutomaticGenerationOfConstructor(
false);
30349AsmConstantExpression.setAutomaticGenerationOfDestructor(
false);
30352#ifndef DOCUMENTATION
30353AsmConstantExpression.useSmallHeader(
true);
30356DECLARE_HEADERS(AsmConstantExpression);
30357#if defined(SgAsmConstantExpression_HEADERS) || defined(DOCUMENTATION)
30358#include <Sawyer/BitVector.h>
30361#ifdef DOCUMENTATION
30369#ifndef DOCUMENTATION
30370 AsmConstantExpression.setDataPrototype(
30371 "Sawyer::Container::BitVector",
"bitVector",
"",
30372 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30375 DECLARE_OTHERS(AsmConstantExpression);
30376#if defined(SgAsmConstantExpression_OTHERS) || defined(DOCUMENTATION)
30379#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
30381 friend class boost::serialization::access;
30384 void serialize(S &s,
const unsigned ) {
30387 s & BOOST_SERIALIZATION_NVP(p_bitVector);
30420#ifdef DOCUMENTATION
30429#ifndef DOCUMENTATION
30430AstNodeClass& AsmValueExpression = nonTerminalConstructor(
30431 "AsmValueExpression",
30433 "AsmValueExpression",
30434 "AsmValueExpressionTag",
30435 SubclassListBuilder()
30436 | AsmConstantExpression
30438assert(AsmValueExpression.associatedGrammar !=
nullptr);
30439AsmValueExpression.setCppCondition(
"!defined(DOCUMENTATION)");
30440AsmValueExpression.isBoostSerializable(
true);
30441AsmValueExpression.setAutomaticGenerationOfConstructor(
false);
30442AsmValueExpression.setAutomaticGenerationOfDestructor(
false);
30445#ifndef DOCUMENTATION
30446AsmValueExpression.useSmallHeader(
true);
30449#ifdef DOCUMENTATION
30460#ifndef DOCUMENTATION
30461 AsmValueExpression.setDataPrototype(
30462 "SgAsmValueExpression*",
"unfoldedExpression",
"= nullptr",
30463 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
30466#ifndef DOCUMENTATION
30467 AsmValueExpression.setDataPrototype(
30468 "unsigned short",
"bitOffset",
"= 0",
30469 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30472#ifndef DOCUMENTATION
30473 AsmValueExpression.setDataPrototype(
30474 "unsigned short",
"bitSize",
"= 0",
30475 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30478#ifndef DOCUMENTATION
30479 AsmValueExpression.setDataPrototype(
30480 "SgSymbol*",
"symbol",
"= nullptr",
30481 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30484 DECLARE_OTHERS(AsmValueExpression);
30485#if defined(SgAsmValueExpression_OTHERS) || defined(DOCUMENTATION)
30488#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
30490 friend class boost::serialization::access;
30493 void serialize(S &s,
const unsigned ) {
30496 s & BOOST_SERIALIZATION_NVP(p_unfoldedExpression);
30497 s & BOOST_SERIALIZATION_NVP(p_bitOffset);
30498 s & BOOST_SERIALIZATION_NVP(p_bitSize);
30555 unsigned short get_bit_offset() const ROSE_DEPRECATED("use
get_bitOffset");
30556 void set_bit_offset(
unsigned short) ROSE_DEPRECATED("use
set_bitOffset");
30557 unsigned short get_bit_size() const ROSE_DEPRECATED("use
get_bitSize");
30558 void set_bit_size(
unsigned short) ROSE_DEPRECATED("use
set_bitSize");
30576#ifdef DOCUMENTATION
30585DECLARE_LEAF_CLASS(AsmCommonSubExpression);
30586IS_SERIALIZABLE(AsmCommonSubExpression);
30588#ifndef DOCUMENTATION
30589AsmCommonSubExpression.useSmallHeader(
true);
30592DECLARE_HEADERS(AsmCommonSubExpression);
30593#if defined(SgAsmCommonSubExpression_HEADERS) || defined(DOCUMENTATION)
30597#ifdef DOCUMENTATION
30601#ifndef DOCUMENTATION
30602 AsmCommonSubExpression.setDataPrototype(
30603 "SgAsmExpression*",
"subexpression",
"= nullptr",
30604 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
30607 DECLARE_OTHERS(AsmCommonSubExpression);
30608#if defined(SgAsmCommonSubExpression_OTHERS) || defined(DOCUMENTATION)
30611#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
30613 friend class boost::serialization::access;
30616 void serialize(S &s,
const unsigned ) {
30619 s & BOOST_SERIALIZATION_NVP(p_subexpression);
30645#ifdef DOCUMENTATION
30654DECLARE_LEAF_CLASS(AsmCoffSymbolTable);
30655IS_SERIALIZABLE(AsmCoffSymbolTable);
30657#ifndef DOCUMENTATION
30658AsmCoffSymbolTable.useSmallHeader(
true);
30661DECLARE_HEADERS(AsmCoffSymbolTable);
30662#if defined(SgAsmCoffSymbolTable_HEADERS) || defined(DOCUMENTATION)
30663#ifdef ROSE_SgAsmCoffSymbolTable_IMPL
30664#include <SgAsmCoffSymbolList.h>
30668#ifdef DOCUMENTATION
30675#ifndef DOCUMENTATION
30676 AsmCoffSymbolTable.setDataPrototype(
30677 "SgAsmGenericSection*",
"strtab",
"= nullptr",
30678 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30681#ifndef DOCUMENTATION
30682 AsmCoffSymbolTable.setDataPrototype(
30683 "SgAsmCoffSymbolList*",
"symbols",
"= createAndParent<SgAsmCoffSymbolList>(this)",
30684 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
30687 DECLARE_OTHERS(AsmCoffSymbolTable);
30688#if defined(SgAsmCoffSymbolTable_OTHERS) || defined(DOCUMENTATION)
30691#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
30693 friend class boost::serialization::access;
30696 void serialize(S &s,
const unsigned ) {
30699 s & BOOST_SERIALIZATION_NVP(p_strtab);
30700 s & BOOST_SERIALIZATION_NVP(p_symbols);
30724 size_t get_nslots()
const;
30727 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
30745#ifdef DOCUMENTATION
30754DECLARE_LEAF_CLASS(AsmCoffSymbolList);
30755IS_SERIALIZABLE(AsmCoffSymbolList);
30757#ifndef DOCUMENTATION
30758AsmCoffSymbolList.useSmallHeader(
true);
30761DECLARE_HEADERS(AsmCoffSymbolList);
30762#if defined(SgAsmCoffSymbolList_HEADERS) || defined(DOCUMENTATION)
30763#include <sageContainer.h>
30766#ifdef DOCUMENTATION
30771#ifndef DOCUMENTATION
30772 AsmCoffSymbolList.setDataPrototype(
30773 "SgAsmCoffSymbolPtrList",
"symbols",
"",
30774 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
30777 DECLARE_OTHERS(AsmCoffSymbolList);
30778#if defined(SgAsmCoffSymbolList_OTHERS) || defined(DOCUMENTATION)
30781#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
30783 friend class boost::serialization::access;
30786 void serialize(S &s,
const unsigned ) {
30789 s & BOOST_SERIALIZATION_NVP(p_symbols);
30820#ifdef DOCUMENTATION
30829DECLARE_LEAF_CLASS(AsmCoffSymbol);
30830IS_SERIALIZABLE(AsmCoffSymbol);
30832#ifndef DOCUMENTATION
30833AsmCoffSymbol.useSmallHeader(
true);
30836DECLARE_HEADERS(AsmCoffSymbol);
30837#if defined(SgAsmCoffSymbol_HEADERS) || defined(DOCUMENTATION)
30838#include <Rose/BinaryAnalysis/Address.h>
30840#include <sageContainer.h>
30843#ifdef DOCUMENTATION
30848#ifndef DOCUMENTATION
30849 AsmCoffSymbol.setDataPrototype(
30850 "std::string",
"st_name",
"",
30851 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30854#ifndef DOCUMENTATION
30855 AsmCoffSymbol.setDataPrototype(
30856 "Rose::BinaryAnalysis::Address",
"st_name_offset",
"= 0",
30857 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30860#ifndef DOCUMENTATION
30861 AsmCoffSymbol.setDataPrototype(
30862 "int",
"st_section_num",
"= 0",
30863 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30866#ifndef DOCUMENTATION
30867 AsmCoffSymbol.setDataPrototype(
30868 "unsigned",
"st_type",
"= 0",
30869 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30872#ifndef DOCUMENTATION
30873 AsmCoffSymbol.setDataPrototype(
30874 "unsigned",
"st_storage_class",
"= 0",
30875 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30878#ifndef DOCUMENTATION
30879 AsmCoffSymbol.setDataPrototype(
30880 "unsigned",
"st_num_aux_entries",
"= 0",
30881 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30884#ifndef DOCUMENTATION
30885 AsmCoffSymbol.setDataPrototype(
30886 "SgUnsignedCharList",
"auxiliaryData",
"",
30887 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
30890 DECLARE_OTHERS(AsmCoffSymbol);
30891#if defined(SgAsmCoffSymbol_OTHERS) || defined(DOCUMENTATION)
30894#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
30896 friend class boost::serialization::access;
30899 void serialize(S &s,
const unsigned ) {
30902 s & BOOST_SERIALIZATION_NVP(p_st_name);
30903 s & BOOST_SERIALIZATION_NVP(p_st_name_offset);
30904 s & BOOST_SERIALIZATION_NVP(p_st_section_num);
30905 s & BOOST_SERIALIZATION_NVP(p_st_type);
30906 s & BOOST_SERIALIZATION_NVP(p_st_storage_class);
30907 s & BOOST_SERIALIZATION_NVP(p_st_num_aux_entries);
30908 s & BOOST_SERIALIZATION_NVP(p_auxiliaryData);
30924 uint32_t st_offset;
30928 int16_t st_section_num;
30930 unsigned char st_storage_class;
30931 unsigned char st_num_aux_entries;
30934#if !defined(SWIG) && !defined(_MSC_VER)
30935 __attribute__((packed))
31003 static const unsigned int COFFSymbol_disk_size = 18;
31011 virtual void dump(FILE *f,
const char *prefix, ssize_t idx)
const override;
31017 const SgUnsignedCharList& get_aux_data() const ROSE_DEPRECATED("use
get_auxiliaryData");
31018 void set_aux_data(const SgUnsignedCharList&) ROSE_DEPRECATED("use
set_auxiliaryData");
31036#ifdef DOCUMENTATION
31045#ifndef DOCUMENTATION
31046AstNodeClass& AsmGenericSymbol = nonTerminalConstructor(
31047 "AsmGenericSymbol",
31049 "AsmGenericSymbol",
31050 "AsmGenericSymbolTag",
31051 SubclassListBuilder()
31055assert(AsmGenericSymbol.associatedGrammar !=
nullptr);
31056AsmGenericSymbol.setCppCondition(
"!defined(DOCUMENTATION)");
31057AsmGenericSymbol.isBoostSerializable(
true);
31058AsmGenericSymbol.setAutomaticGenerationOfConstructor(
false);
31059AsmGenericSymbol.setAutomaticGenerationOfDestructor(
false);
31062#ifndef DOCUMENTATION
31063AsmGenericSymbol.useSmallHeader(
true);
31066DECLARE_HEADERS(AsmGenericSymbol);
31067#if defined(SgAsmGenericSymbol_HEADERS) || defined(DOCUMENTATION)
31068#include <Rose/BinaryAnalysis/Address.h>
31073#ifdef DOCUMENTATION
31077#ifndef DOCUMENTATION
31078 AsmGenericSymbol.setDataPrototype(
31079 "SgAsmGenericSymbol::SymbolDefState",
"definitionState",
"= SgAsmGenericSymbol::SYM_UNDEFINED",
31080 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31083#ifndef DOCUMENTATION
31084 AsmGenericSymbol.setDataPrototype(
31085 "SgAsmGenericSymbol::SymbolBinding",
"binding",
"= SgAsmGenericSymbol::SYM_NO_BINDING",
31086 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31089#ifndef DOCUMENTATION
31090 AsmGenericSymbol.setDataPrototype(
31091 "SgAsmGenericSymbol::SymbolType",
"type",
"= SgAsmGenericSymbol::SYM_NO_TYPE",
31092 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31095#ifndef DOCUMENTATION
31096 AsmGenericSymbol.setDataPrototype(
31097 "Rose::BinaryAnalysis::Address",
"value",
"= 0",
31098 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31101#ifndef DOCUMENTATION
31102 AsmGenericSymbol.setDataPrototype(
31103 "Rose::BinaryAnalysis::Address",
"size",
"= 0",
31104 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31107#ifndef DOCUMENTATION
31108 AsmGenericSymbol.setDataPrototype(
31109 "SgAsmGenericSection*",
"bound",
"= nullptr",
31110 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31113#ifndef DOCUMENTATION
31114 AsmGenericSymbol.setDataPrototype(
31115 "SgAsmGenericString*",
"name",
"= nullptr",
31116 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
31119 DECLARE_OTHERS(AsmGenericSymbol);
31120#if defined(SgAsmGenericSymbol_OTHERS) || defined(DOCUMENTATION)
31123#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
31125 friend class boost::serialization::access;
31128 void serialize(S &s,
const unsigned ) {
31131 s & BOOST_SERIALIZATION_NVP(p_definitionState);
31132 s & BOOST_SERIALIZATION_NVP(p_binding);
31133 s & BOOST_SERIALIZATION_NVP(p_type);
31134 s & BOOST_SERIALIZATION_NVP(p_value);
31135 s & BOOST_SERIALIZATION_NVP(p_size);
31136 s & BOOST_SERIALIZATION_NVP(p_bound);
31137 s & BOOST_SERIALIZATION_NVP(p_name);
31239 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
31264#ifdef DOCUMENTATION
31273DECLARE_LEAF_CLASS(AsmCoffStrtab);
31274IS_SERIALIZABLE(AsmCoffStrtab);
31276#ifndef DOCUMENTATION
31277AsmCoffStrtab.useSmallHeader(
true);
31280DECLARE_HEADERS(AsmCoffStrtab);
31281#if defined(SgAsmCoffStrtab_HEADERS) || defined(DOCUMENTATION)
31282#include <Rose/BinaryAnalysis/Address.h>
31285#ifdef DOCUMENTATION
31290 DECLARE_OTHERS(AsmCoffStrtab);
31291#if defined(SgAsmCoffStrtab_OTHERS) || defined(DOCUMENTATION)
31294#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
31296 friend class boost::serialization::access;
31299 void serialize(S &s,
const unsigned ) {
31308 virtual void unparse(std::ostream&)
const;
31317 ROSE_DEPRECATED(
"use get_storageSize");
31335#ifdef DOCUMENTATION
31344#ifndef DOCUMENTATION
31345AstNodeClass& AsmGenericStrtab = nonTerminalConstructor(
31346 "AsmGenericStrtab",
31348 "AsmGenericStrtab",
31349 "AsmGenericStrtabTag",
31350 SubclassListBuilder()
31354assert(AsmGenericStrtab.associatedGrammar !=
nullptr);
31355AsmGenericStrtab.setCppCondition(
"!defined(DOCUMENTATION)");
31356AsmGenericStrtab.isBoostSerializable(
true);
31357AsmGenericStrtab.setAutomaticGenerationOfConstructor(
false);
31358AsmGenericStrtab.setAutomaticGenerationOfDestructor(
false);
31361#ifndef DOCUMENTATION
31362AsmGenericStrtab.useSmallHeader(
true);
31365DECLARE_HEADERS(AsmGenericStrtab);
31366#if defined(SgAsmGenericStrtab_HEADERS) || defined(DOCUMENTATION)
31367#include <Rose/BinaryAnalysis/Address.h>
31368#include <Rose/BinaryAnalysis/AddressIntervalSet.h>
31371#ifdef DOCUMENTATION
31376#ifndef DOCUMENTATION
31377 AsmGenericStrtab.setDataPrototype(
31378 "SgAsmGenericSection*",
"container",
"= nullptr",
31379 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31382#ifndef DOCUMENTATION
31383 AsmGenericStrtab.setDataPrototype(
31384 "SgAsmGenericStrtab::referenced_t",
"storageList",
"",
31385 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31388#ifndef DOCUMENTATION
31389 AsmGenericStrtab.setDataPrototype(
31390 "Rose::BinaryAnalysis::AddressIntervalSet",
"freeList",
"",
31391 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31394#ifndef DOCUMENTATION
31395 AsmGenericStrtab.setDataPrototype(
31396 "SgAsmStringStorage*",
"dontFree",
"= nullptr",
31397 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31400#ifndef DOCUMENTATION
31401 AsmGenericStrtab.setDataPrototype(
31402 "size_t",
"numberFreed",
"= 0",
31403 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31406 DECLARE_OTHERS(AsmGenericStrtab);
31407#if defined(SgAsmGenericStrtab_OTHERS) || defined(DOCUMENTATION)
31410#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
31412 friend class boost::serialization::access;
31415 void serialize(S &s,
const unsigned ) {
31418 s & BOOST_SERIALIZATION_NVP(p_container);
31419 s & BOOST_SERIALIZATION_NVP(p_storageList);
31420 s & BOOST_SERIALIZATION_NVP(p_freeList);
31421 s & BOOST_SERIALIZATION_NVP(p_dontFree);
31422 s & BOOST_SERIALIZATION_NVP(p_numberFreed);
31430 typedef std::vector<class SgAsmStringStorage*> referenced_t;
31487 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
31527 const referenced_t& get_storage_list() const ROSE_DEPRECATED("use
get_storageList");
31528 void set_storage_list(const referenced_t&) ROSE_DEPRECATED("use
set_storageList");
31529 const
Rose::BinaryAnalysis::AddressIntervalSet& get_freelist() const ROSE_DEPRECATED("use
get_freeList");
31530 Rose::BinaryAnalysis::AddressIntervalSet& get_freelist() ROSE_DEPRECATED("use set_freeList");
31536 void free_all_strings(
bool=false) ROSE_DEPRECATED("use
freeAllStrings");
31537 virtual
void allocate_overlap(
SgAsmStringStorage*) ROSE_DEPRECATED("use allocateOverlap");
31538 virtual
SgAsmStringStorage *create_storage(
Rose::BinaryAnalysis::Address,
bool) ROSE_DEPRECATED("use createStorage");
31539 virtual
Rose::BinaryAnalysis::Address get_storage_size(const
SgAsmStringStorage*) ROSE_DEPRECATED("use get_storageSize");
31557#ifdef DOCUMENTATION
31566DECLARE_LEAF_CLASS(AsmCliHeader);
31567IS_SERIALIZABLE(AsmCliHeader);
31569#ifndef DOCUMENTATION
31570AsmCliHeader.useSmallHeader(
true);
31573DECLARE_HEADERS(AsmCliHeader);
31574#if defined(SgAsmCliHeader_HEADERS) || defined(DOCUMENTATION)
31575#ifdef ROSE_SgAsmCliHeader_IMPL
31576#include <SgAsmCilMetadataRoot.h>
31580#ifdef DOCUMENTATION
31587#ifndef DOCUMENTATION
31588 AsmCliHeader.setDataPrototype(
31589 "uint32_t",
"cb",
"= 0",
31590 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31593#ifndef DOCUMENTATION
31594 AsmCliHeader.setDataPrototype(
31595 "uint16_t",
"majorRuntimeVersion",
"= 0",
31596 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31599#ifndef DOCUMENTATION
31600 AsmCliHeader.setDataPrototype(
31601 "uint16_t",
"minorRuntimeVersion",
"= 0",
31602 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31605#ifndef DOCUMENTATION
31606 AsmCliHeader.setDataPrototype(
31607 "uint64_t",
"metaData",
"= 0",
31608 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31611#ifndef DOCUMENTATION
31612 AsmCliHeader.setDataPrototype(
31613 "uint32_t",
"flags",
"= 0",
31614 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31617#ifndef DOCUMENTATION
31618 AsmCliHeader.setDataPrototype(
31619 "uint32_t",
"entryPointToken",
"= 0",
31620 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31623#ifndef DOCUMENTATION
31624 AsmCliHeader.setDataPrototype(
31625 "uint64_t",
"resources",
"= 0",
31626 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31629#ifndef DOCUMENTATION
31630 AsmCliHeader.setDataPrototype(
31631 "uint64_t",
"strongNameSignature",
"= 0",
31632 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31635#ifndef DOCUMENTATION
31636 AsmCliHeader.setDataPrototype(
31637 "uint64_t",
"codeManagerTable",
"= 0",
31638 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31641#ifndef DOCUMENTATION
31642 AsmCliHeader.setDataPrototype(
31643 "uint64_t",
"vTableFixups",
"= 0",
31644 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31647#ifndef DOCUMENTATION
31648 AsmCliHeader.setDataPrototype(
31649 "uint64_t",
"exportAddressTableJumps",
"= 0",
31650 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31653#ifndef DOCUMENTATION
31654 AsmCliHeader.setDataPrototype(
31655 "uint64_t",
"managedNativeHeader",
"= 0",
31656 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31659#ifndef DOCUMENTATION
31660 AsmCliHeader.setDataPrototype(
31661 "SgAsmCilMetadataRoot*",
"metadataRoot",
"= nullptr",
31662 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
31665 DECLARE_OTHERS(AsmCliHeader);
31666#if defined(SgAsmCliHeader_OTHERS) || defined(DOCUMENTATION)
31669#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
31671 friend class boost::serialization::access;
31674 void serialize(S &s,
const unsigned ) {
31677 s & BOOST_SERIALIZATION_NVP(p_cb);
31678 s & BOOST_SERIALIZATION_NVP(p_majorRuntimeVersion);
31679 s & BOOST_SERIALIZATION_NVP(p_minorRuntimeVersion);
31680 s & BOOST_SERIALIZATION_NVP(p_metaData);
31681 s & BOOST_SERIALIZATION_NVP(p_flags);
31682 s & BOOST_SERIALIZATION_NVP(p_entryPointToken);
31683 s & BOOST_SERIALIZATION_NVP(p_resources);
31684 s & BOOST_SERIALIZATION_NVP(p_strongNameSignature);
31685 s & BOOST_SERIALIZATION_NVP(p_codeManagerTable);
31686 s & BOOST_SERIALIZATION_NVP(p_vTableFixups);
31687 s & BOOST_SERIALIZATION_NVP(p_exportAddressTableJumps);
31688 s & BOOST_SERIALIZATION_NVP(p_managedNativeHeader);
31830 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const override;
31848#ifdef DOCUMENTATION
31857#ifndef DOCUMENTATION
31858AstNodeClass& AsmGenericSection = nonTerminalConstructor(
31859 "AsmGenericSection",
31861 "AsmGenericSection",
31862 "AsmGenericSectionTag",
31863 SubclassListBuilder()
31865 | AsmCoffSymbolTable
31866 | AsmDOSExtendedHeader
31868 | AsmElfSectionTable
31869 | AsmElfSegmentTable
31871 | AsmJvmAttributeTable
31872 | AsmJvmConstantPool
31874 | AsmJvmMethodTable
31880 | AsmLESectionTable
31886 | AsmNESectionTable
31889 | AsmPESectionTable
31891assert(AsmGenericSection.associatedGrammar !=
nullptr);
31892AsmGenericSection.setCppCondition(
"!defined(DOCUMENTATION)");
31893AsmGenericSection.isBoostSerializable(
true);
31894AsmGenericSection.setAutomaticGenerationOfConstructor(
false);
31895AsmGenericSection.setAutomaticGenerationOfDestructor(
false);
31898#ifndef DOCUMENTATION
31899AsmGenericSection.useSmallHeader(
true);
31902DECLARE_HEADERS(AsmGenericSection);
31903#if defined(SgAsmGenericSection_HEADERS) || defined(DOCUMENTATION)
31904#include <Rose/BinaryAnalysis/Address.h>
31905#include <Rose/BinaryAnalysis/AddressIntervalSet.h>
31906#include <Rose/BinaryAnalysis/MemoryMap.h>
31907#include <Rose/BinaryAnalysis/RelativeVirtualAddress.h>
31908#include <sageContainer.h>
31910#ifdef ROSE_SgAsmGenericSection_IMPL
31911#include <SgAsmBasicString.h>
31915#ifdef DOCUMENTATION
31923#ifndef DOCUMENTATION
31924 AsmGenericSection.setDataPrototype(
31925 "SgAsmGenericFile*",
"file",
"= nullptr",
31926 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31929#ifndef DOCUMENTATION
31930 AsmGenericSection.setDataPrototype(
31931 "SgAsmGenericHeader*",
"header",
"= nullptr",
31932 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31935#ifndef DOCUMENTATION
31936 AsmGenericSection.setDataPrototype(
31937 "Rose::BinaryAnalysis::Address",
"size",
"= 0",
31938 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31941#ifndef DOCUMENTATION
31942 AsmGenericSection.setDataPrototype(
31943 "Rose::BinaryAnalysis::Address",
"offset",
"= 0",
31944 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31947#ifndef DOCUMENTATION
31948 AsmGenericSection.setDataPrototype(
31949 "Rose::BinaryAnalysis::Address",
"fileAlignment",
"= 0",
31950 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31953#ifndef DOCUMENTATION
31954 AsmGenericSection.setDataPrototype(
31955 "SgFileContentList",
"data",
"",
31956 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31959#ifndef DOCUMENTATION
31960 AsmGenericSection.setDataPrototype(
31961 "SgAsmGenericSection::SectionPurpose",
"purpose",
"= SgAsmGenericSection::SP_UNSPECIFIED",
31962 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31965#ifndef DOCUMENTATION
31966 AsmGenericSection.setDataPrototype(
31967 "bool",
"synthesized",
"= false",
31968 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31971#ifndef DOCUMENTATION
31972 AsmGenericSection.setDataPrototype(
31973 "int",
"id",
"= -1",
31974 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31977#ifndef DOCUMENTATION
31978 AsmGenericSection.setDataPrototype(
31979 "SgAsmGenericString*",
"name",
"= createAndParent<SgAsmBasicString>(this)",
31980 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31983#ifndef DOCUMENTATION
31984 AsmGenericSection.setDataPrototype(
31985 "std::string",
"shortName",
"",
31986 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31989#ifndef DOCUMENTATION
31990 AsmGenericSection.setDataPrototype(
31991 "Rose::BinaryAnalysis::Address",
"mappedPreferredRva",
"= 0",
31992 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
31995#ifndef DOCUMENTATION
31996 AsmGenericSection.setDataPrototype(
31997 "Rose::BinaryAnalysis::Address",
"mappedSize",
"= 0",
31998 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
32001#ifndef DOCUMENTATION
32002 AsmGenericSection.setDataPrototype(
32003 "Rose::BinaryAnalysis::Address",
"mappedAlignment",
"= 0",
32004 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
32007#ifndef DOCUMENTATION
32008 AsmGenericSection.setDataPrototype(
32009 "bool",
"mappedReadPermission",
"= false",
32010 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
32013#ifndef DOCUMENTATION
32014 AsmGenericSection.setDataPrototype(
32015 "bool",
"mappedWritePermission",
"= false",
32016 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
32019#ifndef DOCUMENTATION
32020 AsmGenericSection.setDataPrototype(
32021 "bool",
"mappedExecutePermission",
"= false",
32022 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
32025#ifndef DOCUMENTATION
32026 AsmGenericSection.setDataPrototype(
32027 "bool",
"containsCode",
"= false",
32028 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
32031#ifndef DOCUMENTATION
32032 AsmGenericSection.setDataPrototype(
32033 "Rose::BinaryAnalysis::Address",
"mappedActualVa",
"= 0",
32034 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
32037 DECLARE_OTHERS(AsmGenericSection);
32038#if defined(SgAsmGenericSection_OTHERS) || defined(DOCUMENTATION)
32041#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
32043 friend class boost::serialization::access;
32046 void serialize(S &s,
const unsigned ) {
32049 s & BOOST_SERIALIZATION_NVP(p_file);
32050 s & BOOST_SERIALIZATION_NVP(p_header);
32051 s & BOOST_SERIALIZATION_NVP(p_size);
32052 s & BOOST_SERIALIZATION_NVP(p_offset);
32053 s & BOOST_SERIALIZATION_NVP(p_fileAlignment);
32054 s & BOOST_SERIALIZATION_NVP(p_data);
32055 s & BOOST_SERIALIZATION_NVP(p_purpose);
32056 s & BOOST_SERIALIZATION_NVP(p_synthesized);
32057 s & BOOST_SERIALIZATION_NVP(p_id);
32058 s & BOOST_SERIALIZATION_NVP(p_name);
32059 s & BOOST_SERIALIZATION_NVP(p_shortName);
32060 s & BOOST_SERIALIZATION_NVP(p_mappedPreferredRva);
32061 s & BOOST_SERIALIZATION_NVP(p_mappedSize);
32062 s & BOOST_SERIALIZATION_NVP(p_mappedAlignment);
32063 s & BOOST_SERIALIZATION_NVP(p_mappedReadPermission);
32064 s & BOOST_SERIALIZATION_NVP(p_mappedWritePermission);
32065 s & BOOST_SERIALIZATION_NVP(p_mappedExecutePermission);
32066 s & BOOST_SERIALIZATION_NVP(p_containsCode);
32067 s & BOOST_SERIALIZATION_NVP(p_mappedActualVa);
32300 unsigned char *local_data_pool;
32316 const SgAsmGenericSectionPtrList&);
32330 virtual void dump(FILE*,
const char *prefix, ssize_t idx)
const;
32566 std::
string get_short_name() const ROSE_DEPRECATED("use
get_shortName");
32567 void set_short_name(const std::
string&) ROSE_DEPRECATED("use
set_shortName");
32570 Rose::BinaryAnalysis::Address get_mapped_size() const ROSE_DEPRECATED("use
get_mappedSize");
32571 void set_mapped_size(
Rose::BinaryAnalysis::Address) ROSE_DEPRECATED("use
set_mappedSize");
32584 static
void dump_containing_sections(FILE*, const std::
string&,
Rose::BinaryAnalysis::RelativeVirtualAddress,
32585 const SgAsmGenericSectionPtrList&)
32587 void grab_content() ROSE_DEPRECATED("use
grabContent");
32588 void unparse_holes(std::ostream&) const ROSE_DEPRECATED("use
unparseHoles");
32590 Rose::BinaryAnalysis::Address get_end_offset() const ROSE_DEPRECATED("use
get_endOffset");
32591 Rose::BinaryAnalysis::Address write_uleb128(
unsigned char*,
Rose::BinaryAnalysis::Address, uint64_t) const
32593 Rose::BinaryAnalysis::Address write_sleb128(
unsigned char*,
Rose::BinaryAnalysis::Address, int64_t) const
32595 size_t read_content(
Rose::BinaryAnalysis::Address,
void*,
Rose::BinaryAnalysis::Address,
bool=true)
32597 size_t read_content(const
Rose::BinaryAnalysis::MemoryMap::Ptr&,
Rose::BinaryAnalysis::Address,
void*,
32598 Rose::BinaryAnalysis::Address,
bool=true) ROSE_DEPRECATED("use
readContent");
32599 size_t read_content(const
Rose::BinaryAnalysis::MemoryMap::Ptr&, const
Rose::BinaryAnalysis::RelativeVirtualAddress&,
void*,
32600 Rose::BinaryAnalysis::Address,
bool=true)
32602 size_t read_content_local(
Rose::BinaryAnalysis::Address,
void*,
Rose::BinaryAnalysis::Address,
bool=true)
32604 std::
string read_content_str(const
Rose::BinaryAnalysis::MemoryMap::Ptr&,
Rose::BinaryAnalysis::Address,
bool=true)
32606 std::
string read_content_str(
Rose::BinaryAnalysis::Address,
bool=true) ROSE_DEPRECATED("use
readContentString");
32607 std::
string read_content_str(const
Rose::BinaryAnalysis::MemoryMap::Ptr&,
Rose::BinaryAnalysis::RelativeVirtualAddress,
32611 SgUnsignedCharList read_content_local_ucl(
Rose::BinaryAnalysis::Address,
Rose::BinaryAnalysis::Address)
32615 unsigned char *writable_content(
size_t) ROSE_DEPRECATED("use
writableContent");
32618 bool is_mapped() const ROSE_DEPRECATED("use
isMapped");
32619 void clear_mapped() ROSE_DEPRECATED("use
clearMapped");
32620 Rose::BinaryAnalysis::Address get_base_va() const ROSE_DEPRECATED("use
get_baseVa");
32622 Rose::BinaryAnalysis::Address get_va_offset(
Rose::BinaryAnalysis::Address) const ROSE_DEPRECATED("use
get_vaOffset");
32623 Rose::BinaryAnalysis::Address get_rva_offset(
Rose::BinaryAnalysis::Address) const ROSE_DEPRECATED("use
get_rvaOffset");
32643#ifdef DOCUMENTATION
32652DECLARE_LEAF_CLASS(AsmCilUint8Heap);
32653IS_SERIALIZABLE(AsmCilUint8Heap);
32655#ifndef DOCUMENTATION
32656AsmCilUint8Heap.useSmallHeader(
true);
32659#ifdef DOCUMENTATION
32664#ifndef DOCUMENTATION
32665 AsmCilUint8Heap.setDataPrototype(
32666 "std::vector<uint8_t>",
"Stream",
"",
32667 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
32670 DECLARE_OTHERS(AsmCilUint8Heap);
32671#if defined(SgAsmCilUint8Heap_OTHERS) || defined(DOCUMENTATION)
32674#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
32676 friend class boost::serialization::access;
32679 void serialize(S &s,
const unsigned ) {
32682 s & BOOST_SERIALIZATION_NVP(p_Stream);
32688 std::vector<uint8_t>
const& get_Stream()
const;
32689 std::vector<uint8_t>& get_Stream();
32691 void parse(
const std::vector<uint8_t>& buf,
size_t startOfMetaData)
override;
32692 void unparse(std::vector<uint8_t>& buf,
size_t startOfMetaData)
const override;
32693 void dump(std::ostream& os)
const override;
32705 uint32_t
const& Size,
32706 std::string
const& Name,
32707 uint32_t
const& NamePadding);
32718#ifdef DOCUMENTATION
32727DECLARE_LEAF_CLASS(AsmCilUint32Heap);
32728IS_SERIALIZABLE(AsmCilUint32Heap);
32730#ifndef DOCUMENTATION
32731AsmCilUint32Heap.useSmallHeader(
true);
32734#ifdef DOCUMENTATION
32739#ifndef DOCUMENTATION
32740 AsmCilUint32Heap.setDataPrototype(
32741 "std::vector<uint32_t>",
"Stream",
"",
32742 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
32745 DECLARE_OTHERS(AsmCilUint32Heap);
32746#if defined(SgAsmCilUint32Heap_OTHERS) || defined(DOCUMENTATION)
32749#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
32751 friend class boost::serialization::access;
32754 void serialize(S &s,
const unsigned ) {
32757 s & BOOST_SERIALIZATION_NVP(p_Stream);
32763 std::vector<uint32_t>
const& get_Stream()
const;
32764 std::vector<uint32_t>& get_Stream();
32766 void parse(
const std::vector<uint8_t>& buf,
size_t startOfMetaData)
override;
32767 void unparse(std::vector<uint8_t>& buf,
size_t startOfMetaData)
const override;
32768 void dump(std::ostream& os)
const override;
32780 uint32_t
const& Size,
32781 std::string
const& Name,
32782 uint32_t
const& NamePadding);
32793#ifdef DOCUMENTATION
32802DECLARE_LEAF_CLASS(AsmCilTypeSpecTable);
32803IS_SERIALIZABLE(AsmCilTypeSpecTable);
32805#ifndef DOCUMENTATION
32806AsmCilTypeSpecTable.useSmallHeader(
true);
32809#ifdef DOCUMENTATION
32814#ifndef DOCUMENTATION
32815 AsmCilTypeSpecTable.setDataPrototype(
32816 "std::vector<SgAsmCilTypeSpec*>",
"elements",
"",
32817 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
32820 DECLARE_OTHERS(AsmCilTypeSpecTable);
32821#if defined(SgAsmCilTypeSpecTable_OTHERS) || defined(DOCUMENTATION)
32824#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
32826 friend class boost::serialization::access;
32829 void serialize(S &s,
const unsigned ) {
32832 s & BOOST_SERIALIZATION_NVP(p_elements);
32838 std::vector<SgAsmCilTypeSpec*>
const& get_elements()
const;
32839 std::vector<SgAsmCilTypeSpec*>& get_elements();
32859#ifdef DOCUMENTATION
32868DECLARE_LEAF_CLASS(AsmCilTypeSpec);
32869IS_SERIALIZABLE(AsmCilTypeSpec);
32871#ifndef DOCUMENTATION
32872AsmCilTypeSpec.useSmallHeader(
true);
32875#ifdef DOCUMENTATION
32880#ifndef DOCUMENTATION
32881 AsmCilTypeSpec.setDataPrototype(
32882 "uint32_t",
"Signature",
"= 0",
32883 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
32886 DECLARE_OTHERS(AsmCilTypeSpec);
32887#if defined(SgAsmCilTypeSpec_OTHERS) || defined(DOCUMENTATION)
32890#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
32892 friend class boost::serialization::access;
32895 void serialize(S &s,
const unsigned ) {
32898 s & BOOST_SERIALIZATION_NVP(p_Signature);
32913 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
32914 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
32915 void dump(std::ostream&)
const;
32917 const std::uint8_t* get_Signature_blob()
const;
32935#ifdef DOCUMENTATION
32944DECLARE_LEAF_CLASS(AsmCilTypeRefTable);
32945IS_SERIALIZABLE(AsmCilTypeRefTable);
32947#ifndef DOCUMENTATION
32948AsmCilTypeRefTable.useSmallHeader(
true);
32951#ifdef DOCUMENTATION
32956#ifndef DOCUMENTATION
32957 AsmCilTypeRefTable.setDataPrototype(
32958 "std::vector<SgAsmCilTypeRef*>",
"elements",
"",
32959 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
32962 DECLARE_OTHERS(AsmCilTypeRefTable);
32963#if defined(SgAsmCilTypeRefTable_OTHERS) || defined(DOCUMENTATION)
32966#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
32968 friend class boost::serialization::access;
32971 void serialize(S &s,
const unsigned ) {
32974 s & BOOST_SERIALIZATION_NVP(p_elements);
32980 std::vector<SgAsmCilTypeRef*>
const& get_elements()
const;
32981 std::vector<SgAsmCilTypeRef*>& get_elements();
33001#ifdef DOCUMENTATION
33010DECLARE_LEAF_CLASS(AsmCilTypeRef);
33011IS_SERIALIZABLE(AsmCilTypeRef);
33013#ifndef DOCUMENTATION
33014AsmCilTypeRef.useSmallHeader(
true);
33017#ifdef DOCUMENTATION
33022#ifndef DOCUMENTATION
33023 AsmCilTypeRef.setDataPrototype(
33024 "uint16_t",
"ResolutionScope",
"= 0",
33025 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33028#ifndef DOCUMENTATION
33029 AsmCilTypeRef.setDataPrototype(
33030 "uint32_t",
"TypeName",
"= 0",
33031 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33034#ifndef DOCUMENTATION
33035 AsmCilTypeRef.setDataPrototype(
33036 "uint32_t",
"TypeNamespace",
"= 0",
33037 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33040 DECLARE_OTHERS(AsmCilTypeRef);
33041#if defined(SgAsmCilTypeRef_OTHERS) || defined(DOCUMENTATION)
33044#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
33046 friend class boost::serialization::access;
33049 void serialize(S &s,
const unsigned ) {
33052 s & BOOST_SERIALIZATION_NVP(p_ResolutionScope);
33053 s & BOOST_SERIALIZATION_NVP(p_TypeName);
33054 s & BOOST_SERIALIZATION_NVP(p_TypeNamespace);
33089 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
33090 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
33091 void dump(std::ostream&)
const;
33094 const std::uint8_t* get_TypeName_string()
const;
33095 const std::uint8_t* get_TypeNamespace_string()
const;
33113#ifdef DOCUMENTATION
33122DECLARE_LEAF_CLASS(AsmCilTypeDefTable);
33123IS_SERIALIZABLE(AsmCilTypeDefTable);
33125#ifndef DOCUMENTATION
33126AsmCilTypeDefTable.useSmallHeader(
true);
33129#ifdef DOCUMENTATION
33134#ifndef DOCUMENTATION
33135 AsmCilTypeDefTable.setDataPrototype(
33136 "std::vector<SgAsmCilTypeDef*>",
"elements",
"",
33137 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
33140 DECLARE_OTHERS(AsmCilTypeDefTable);
33141#if defined(SgAsmCilTypeDefTable_OTHERS) || defined(DOCUMENTATION)
33144#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
33146 friend class boost::serialization::access;
33149 void serialize(S &s,
const unsigned ) {
33152 s & BOOST_SERIALIZATION_NVP(p_elements);
33158 std::vector<SgAsmCilTypeDef*>
const& get_elements()
const;
33159 std::vector<SgAsmCilTypeDef*>& get_elements();
33179#ifdef DOCUMENTATION
33188DECLARE_LEAF_CLASS(AsmCilTypeDef);
33189IS_SERIALIZABLE(AsmCilTypeDef);
33191#ifndef DOCUMENTATION
33192AsmCilTypeDef.useSmallHeader(
true);
33195#ifdef DOCUMENTATION
33200#ifndef DOCUMENTATION
33201 AsmCilTypeDef.setDataPrototype(
33202 "uint32_t",
"Flags",
"= 0",
33203 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33206#ifndef DOCUMENTATION
33207 AsmCilTypeDef.setDataPrototype(
33208 "uint32_t",
"TypeName",
"= 0",
33209 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33212#ifndef DOCUMENTATION
33213 AsmCilTypeDef.setDataPrototype(
33214 "uint32_t",
"TypeNamespace",
"= 0",
33215 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33218#ifndef DOCUMENTATION
33219 AsmCilTypeDef.setDataPrototype(
33220 "uint32_t",
"Extends",
"= 0",
33221 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33224#ifndef DOCUMENTATION
33225 AsmCilTypeDef.setDataPrototype(
33226 "uint32_t",
"FieldList",
"= 0",
33227 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33230#ifndef DOCUMENTATION
33231 AsmCilTypeDef.setDataPrototype(
33232 "uint32_t",
"MethodList",
"= 0",
33233 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33236 DECLARE_OTHERS(AsmCilTypeDef);
33237#if defined(SgAsmCilTypeDef_OTHERS) || defined(DOCUMENTATION)
33240#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
33242 friend class boost::serialization::access;
33245 void serialize(S &s,
const unsigned ) {
33248 s & BOOST_SERIALIZATION_NVP(p_Flags);
33249 s & BOOST_SERIALIZATION_NVP(p_TypeName);
33250 s & BOOST_SERIALIZATION_NVP(p_TypeNamespace);
33251 s & BOOST_SERIALIZATION_NVP(p_Extends);
33252 s & BOOST_SERIALIZATION_NVP(p_FieldList);
33253 s & BOOST_SERIALIZATION_NVP(p_MethodList);
33318 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
33319 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
33320 void dump(std::ostream&)
const;
33322 const std::uint8_t* get_TypeName_string()
const;
33323 const std::uint8_t* get_TypeNamespace_string()
const;
33345#ifdef DOCUMENTATION
33354DECLARE_LEAF_CLASS(AsmCilStandAloneSigTable);
33355IS_SERIALIZABLE(AsmCilStandAloneSigTable);
33357#ifndef DOCUMENTATION
33358AsmCilStandAloneSigTable.useSmallHeader(
true);
33361#ifdef DOCUMENTATION
33366#ifndef DOCUMENTATION
33367 AsmCilStandAloneSigTable.setDataPrototype(
33368 "std::vector<SgAsmCilStandAloneSig*>",
"elements",
"",
33369 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
33372 DECLARE_OTHERS(AsmCilStandAloneSigTable);
33373#if defined(SgAsmCilStandAloneSigTable_OTHERS) || defined(DOCUMENTATION)
33376#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
33378 friend class boost::serialization::access;
33381 void serialize(S &s,
const unsigned ) {
33384 s & BOOST_SERIALIZATION_NVP(p_elements);
33390 std::vector<SgAsmCilStandAloneSig*>
const& get_elements()
const;
33391 std::vector<SgAsmCilStandAloneSig*>& get_elements();
33411#ifdef DOCUMENTATION
33420DECLARE_LEAF_CLASS(AsmCilStandAloneSig);
33421IS_SERIALIZABLE(AsmCilStandAloneSig);
33423#ifndef DOCUMENTATION
33424AsmCilStandAloneSig.useSmallHeader(
true);
33427#ifdef DOCUMENTATION
33432#ifndef DOCUMENTATION
33433 AsmCilStandAloneSig.setDataPrototype(
33434 "uint32_t",
"Signature",
"= 0",
33435 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33438 DECLARE_OTHERS(AsmCilStandAloneSig);
33439#if defined(SgAsmCilStandAloneSig_OTHERS) || defined(DOCUMENTATION)
33442#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
33444 friend class boost::serialization::access;
33447 void serialize(S &s,
const unsigned ) {
33450 s & BOOST_SERIALIZATION_NVP(p_Signature);
33465 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
33466 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
33467 void dump(std::ostream&)
const;
33469 const std::uint8_t* get_Signature_blob()
const;
33487#ifdef DOCUMENTATION
33496DECLARE_LEAF_CLASS(AsmCilPropertyTable);
33497IS_SERIALIZABLE(AsmCilPropertyTable);
33499#ifndef DOCUMENTATION
33500AsmCilPropertyTable.useSmallHeader(
true);
33503#ifdef DOCUMENTATION
33508#ifndef DOCUMENTATION
33509 AsmCilPropertyTable.setDataPrototype(
33510 "std::vector<SgAsmCilProperty*>",
"elements",
"",
33511 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
33514 DECLARE_OTHERS(AsmCilPropertyTable);
33515#if defined(SgAsmCilPropertyTable_OTHERS) || defined(DOCUMENTATION)
33518#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
33520 friend class boost::serialization::access;
33523 void serialize(S &s,
const unsigned ) {
33526 s & BOOST_SERIALIZATION_NVP(p_elements);
33532 std::vector<SgAsmCilProperty*>
const& get_elements()
const;
33533 std::vector<SgAsmCilProperty*>& get_elements();
33553#ifdef DOCUMENTATION
33562DECLARE_LEAF_CLASS(AsmCilPropertyMapTable);
33563IS_SERIALIZABLE(AsmCilPropertyMapTable);
33565#ifndef DOCUMENTATION
33566AsmCilPropertyMapTable.useSmallHeader(
true);
33569#ifdef DOCUMENTATION
33574#ifndef DOCUMENTATION
33575 AsmCilPropertyMapTable.setDataPrototype(
33576 "std::vector<SgAsmCilPropertyMap*>",
"elements",
"",
33577 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
33580 DECLARE_OTHERS(AsmCilPropertyMapTable);
33581#if defined(SgAsmCilPropertyMapTable_OTHERS) || defined(DOCUMENTATION)
33584#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
33586 friend class boost::serialization::access;
33589 void serialize(S &s,
const unsigned ) {
33592 s & BOOST_SERIALIZATION_NVP(p_elements);
33598 std::vector<SgAsmCilPropertyMap*>
const& get_elements()
const;
33599 std::vector<SgAsmCilPropertyMap*>& get_elements();
33619#ifdef DOCUMENTATION
33628DECLARE_LEAF_CLASS(AsmCilPropertyMap);
33629IS_SERIALIZABLE(AsmCilPropertyMap);
33631#ifndef DOCUMENTATION
33632AsmCilPropertyMap.useSmallHeader(
true);
33635#ifdef DOCUMENTATION
33640#ifndef DOCUMENTATION
33641 AsmCilPropertyMap.setDataPrototype(
33642 "uint32_t",
"Parent",
"= 0",
33643 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33646#ifndef DOCUMENTATION
33647 AsmCilPropertyMap.setDataPrototype(
33648 "uint32_t",
"PropertyList",
"= 0",
33649 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33652 DECLARE_OTHERS(AsmCilPropertyMap);
33653#if defined(SgAsmCilPropertyMap_OTHERS) || defined(DOCUMENTATION)
33656#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
33658 friend class boost::serialization::access;
33661 void serialize(S &s,
const unsigned ) {
33664 s & BOOST_SERIALIZATION_NVP(p_Parent);
33665 s & BOOST_SERIALIZATION_NVP(p_PropertyList);
33690 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
33691 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
33692 void dump(std::ostream&)
const;
33713#ifdef DOCUMENTATION
33722DECLARE_LEAF_CLASS(AsmCilProperty);
33723IS_SERIALIZABLE(AsmCilProperty);
33725#ifndef DOCUMENTATION
33726AsmCilProperty.useSmallHeader(
true);
33729#ifdef DOCUMENTATION
33734#ifndef DOCUMENTATION
33735 AsmCilProperty.setDataPrototype(
33736 "uint16_t",
"Flags",
"= 0",
33737 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33740#ifndef DOCUMENTATION
33741 AsmCilProperty.setDataPrototype(
33742 "uint32_t",
"Name",
"= 0",
33743 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33746#ifndef DOCUMENTATION
33747 AsmCilProperty.setDataPrototype(
33748 "uint32_t",
"Type",
"= 0",
33749 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33752 DECLARE_OTHERS(AsmCilProperty);
33753#if defined(SgAsmCilProperty_OTHERS) || defined(DOCUMENTATION)
33756#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
33758 friend class boost::serialization::access;
33761 void serialize(S &s,
const unsigned ) {
33764 s & BOOST_SERIALIZATION_NVP(p_Flags);
33765 s & BOOST_SERIALIZATION_NVP(p_Name);
33766 s & BOOST_SERIALIZATION_NVP(p_Type);
33801 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
33802 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
33803 void dump(std::ostream&)
const;
33805 const std::uint8_t* get_Name_string()
const;
33806 const std::uint8_t* get_Type_blob()
const;
33824#ifdef DOCUMENTATION
33833DECLARE_LEAF_CLASS(AsmCilParamTable);
33834IS_SERIALIZABLE(AsmCilParamTable);
33836#ifndef DOCUMENTATION
33837AsmCilParamTable.useSmallHeader(
true);
33840#ifdef DOCUMENTATION
33845#ifndef DOCUMENTATION
33846 AsmCilParamTable.setDataPrototype(
33847 "std::vector<SgAsmCilParam*>",
"elements",
"",
33848 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
33851 DECLARE_OTHERS(AsmCilParamTable);
33852#if defined(SgAsmCilParamTable_OTHERS) || defined(DOCUMENTATION)
33855#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
33857 friend class boost::serialization::access;
33860 void serialize(S &s,
const unsigned ) {
33863 s & BOOST_SERIALIZATION_NVP(p_elements);
33869 std::vector<SgAsmCilParam*>
const& get_elements()
const;
33870 std::vector<SgAsmCilParam*>& get_elements();
33890#ifdef DOCUMENTATION
33899DECLARE_LEAF_CLASS(AsmCilParam);
33900IS_SERIALIZABLE(AsmCilParam);
33902#ifndef DOCUMENTATION
33903AsmCilParam.useSmallHeader(
true);
33906#ifdef DOCUMENTATION
33911#ifndef DOCUMENTATION
33912 AsmCilParam.setDataPrototype(
33913 "uint16_t",
"Flags",
"= 0",
33914 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33917#ifndef DOCUMENTATION
33918 AsmCilParam.setDataPrototype(
33919 "uint16_t",
"Sequence",
"= 0",
33920 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33923#ifndef DOCUMENTATION
33924 AsmCilParam.setDataPrototype(
33925 "uint32_t",
"Name",
"= 0",
33926 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
33929 DECLARE_OTHERS(AsmCilParam);
33930#if defined(SgAsmCilParam_OTHERS) || defined(DOCUMENTATION)
33933#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
33935 friend class boost::serialization::access;
33938 void serialize(S &s,
const unsigned ) {
33941 s & BOOST_SERIALIZATION_NVP(p_Flags);
33942 s & BOOST_SERIALIZATION_NVP(p_Sequence);
33943 s & BOOST_SERIALIZATION_NVP(p_Name);
33978 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
33979 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
33980 void dump(std::ostream&)
const;
33982 const std::uint8_t* get_Name_string()
const;
34000#ifdef DOCUMENTATION
34009DECLARE_LEAF_CLASS(AsmCilNestedClassTable);
34010IS_SERIALIZABLE(AsmCilNestedClassTable);
34012#ifndef DOCUMENTATION
34013AsmCilNestedClassTable.useSmallHeader(
true);
34016#ifdef DOCUMENTATION
34021#ifndef DOCUMENTATION
34022 AsmCilNestedClassTable.setDataPrototype(
34023 "std::vector<SgAsmCilNestedClass*>",
"elements",
"",
34024 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
34027 DECLARE_OTHERS(AsmCilNestedClassTable);
34028#if defined(SgAsmCilNestedClassTable_OTHERS) || defined(DOCUMENTATION)
34031#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
34033 friend class boost::serialization::access;
34036 void serialize(S &s,
const unsigned ) {
34039 s & BOOST_SERIALIZATION_NVP(p_elements);
34045 std::vector<SgAsmCilNestedClass*>
const& get_elements()
const;
34046 std::vector<SgAsmCilNestedClass*>& get_elements();
34066#ifdef DOCUMENTATION
34075DECLARE_LEAF_CLASS(AsmCilNestedClass);
34076IS_SERIALIZABLE(AsmCilNestedClass);
34078#ifndef DOCUMENTATION
34079AsmCilNestedClass.useSmallHeader(
true);
34082#ifdef DOCUMENTATION
34087#ifndef DOCUMENTATION
34088 AsmCilNestedClass.setDataPrototype(
34089 "uint32_t",
"NestedClass",
"= 0",
34090 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34093#ifndef DOCUMENTATION
34094 AsmCilNestedClass.setDataPrototype(
34095 "uint32_t",
"EnclosingClass",
"= 0",
34096 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34099 DECLARE_OTHERS(AsmCilNestedClass);
34100#if defined(SgAsmCilNestedClass_OTHERS) || defined(DOCUMENTATION)
34103#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
34105 friend class boost::serialization::access;
34108 void serialize(S &s,
const unsigned ) {
34111 s & BOOST_SERIALIZATION_NVP(p_NestedClass);
34112 s & BOOST_SERIALIZATION_NVP(p_EnclosingClass);
34137 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
34138 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
34139 void dump(std::ostream&)
const;
34160#ifdef DOCUMENTATION
34169DECLARE_LEAF_CLASS(AsmCilModuleTable);
34170IS_SERIALIZABLE(AsmCilModuleTable);
34172#ifndef DOCUMENTATION
34173AsmCilModuleTable.useSmallHeader(
true);
34176#ifdef DOCUMENTATION
34181#ifndef DOCUMENTATION
34182 AsmCilModuleTable.setDataPrototype(
34183 "std::vector<SgAsmCilModule*>",
"elements",
"",
34184 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
34187 DECLARE_OTHERS(AsmCilModuleTable);
34188#if defined(SgAsmCilModuleTable_OTHERS) || defined(DOCUMENTATION)
34191#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
34193 friend class boost::serialization::access;
34196 void serialize(S &s,
const unsigned ) {
34199 s & BOOST_SERIALIZATION_NVP(p_elements);
34205 std::vector<SgAsmCilModule*>
const& get_elements()
const;
34206 std::vector<SgAsmCilModule*>& get_elements();
34226#ifdef DOCUMENTATION
34235DECLARE_LEAF_CLASS(AsmCilModuleRefTable);
34236IS_SERIALIZABLE(AsmCilModuleRefTable);
34238#ifndef DOCUMENTATION
34239AsmCilModuleRefTable.useSmallHeader(
true);
34242#ifdef DOCUMENTATION
34247#ifndef DOCUMENTATION
34248 AsmCilModuleRefTable.setDataPrototype(
34249 "std::vector<SgAsmCilModuleRef*>",
"elements",
"",
34250 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
34253 DECLARE_OTHERS(AsmCilModuleRefTable);
34254#if defined(SgAsmCilModuleRefTable_OTHERS) || defined(DOCUMENTATION)
34257#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
34259 friend class boost::serialization::access;
34262 void serialize(S &s,
const unsigned ) {
34265 s & BOOST_SERIALIZATION_NVP(p_elements);
34271 std::vector<SgAsmCilModuleRef*>
const& get_elements()
const;
34272 std::vector<SgAsmCilModuleRef*>& get_elements();
34292#ifdef DOCUMENTATION
34301DECLARE_LEAF_CLASS(AsmCilModuleRef);
34302IS_SERIALIZABLE(AsmCilModuleRef);
34304#ifndef DOCUMENTATION
34305AsmCilModuleRef.useSmallHeader(
true);
34308#ifdef DOCUMENTATION
34313#ifndef DOCUMENTATION
34314 AsmCilModuleRef.setDataPrototype(
34315 "uint32_t",
"Name",
"= 0",
34316 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34319 DECLARE_OTHERS(AsmCilModuleRef);
34320#if defined(SgAsmCilModuleRef_OTHERS) || defined(DOCUMENTATION)
34323#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
34325 friend class boost::serialization::access;
34328 void serialize(S &s,
const unsigned ) {
34331 s & BOOST_SERIALIZATION_NVP(p_Name);
34346 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
34347 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
34348 void dump(std::ostream&)
const;
34350 const std::uint8_t* get_Name_string()
const;
34368#ifdef DOCUMENTATION
34377DECLARE_LEAF_CLASS(AsmCilModule);
34378IS_SERIALIZABLE(AsmCilModule);
34380#ifndef DOCUMENTATION
34381AsmCilModule.useSmallHeader(
true);
34384#ifdef DOCUMENTATION
34389#ifndef DOCUMENTATION
34390 AsmCilModule.setDataPrototype(
34391 "uint16_t",
"Generation",
"= 0",
34392 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34395#ifndef DOCUMENTATION
34396 AsmCilModule.setDataPrototype(
34397 "uint32_t",
"Name",
"= 0",
34398 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34401#ifndef DOCUMENTATION
34402 AsmCilModule.setDataPrototype(
34403 "uint32_t",
"Mvid",
"= 0",
34404 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34407#ifndef DOCUMENTATION
34408 AsmCilModule.setDataPrototype(
34409 "uint32_t",
"Encld",
"= 0",
34410 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34413#ifndef DOCUMENTATION
34414 AsmCilModule.setDataPrototype(
34415 "uint32_t",
"EncBaseId",
"= 0",
34416 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34419 DECLARE_OTHERS(AsmCilModule);
34420#if defined(SgAsmCilModule_OTHERS) || defined(DOCUMENTATION)
34423#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
34425 friend class boost::serialization::access;
34428 void serialize(S &s,
const unsigned ) {
34431 s & BOOST_SERIALIZATION_NVP(p_Generation);
34432 s & BOOST_SERIALIZATION_NVP(p_Name);
34433 s & BOOST_SERIALIZATION_NVP(p_Mvid);
34434 s & BOOST_SERIALIZATION_NVP(p_Encld);
34435 s & BOOST_SERIALIZATION_NVP(p_EncBaseId);
34490 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
34491 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
34492 void dump(std::ostream&)
const;
34494 const std::uint8_t* get_Name_string()
const;
34495 const std::uint32_t* get_Mvid_guid()
const;
34496 const std::uint32_t* get_Encld_guid()
const;
34497 const std::uint32_t* get_EncBaseId_guid()
const;
34515#ifdef DOCUMENTATION
34524DECLARE_LEAF_CLASS(AsmCilMethodSpecTable);
34525IS_SERIALIZABLE(AsmCilMethodSpecTable);
34527#ifndef DOCUMENTATION
34528AsmCilMethodSpecTable.useSmallHeader(
true);
34531#ifdef DOCUMENTATION
34536#ifndef DOCUMENTATION
34537 AsmCilMethodSpecTable.setDataPrototype(
34538 "std::vector<SgAsmCilMethodSpec*>",
"elements",
"",
34539 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
34542 DECLARE_OTHERS(AsmCilMethodSpecTable);
34543#if defined(SgAsmCilMethodSpecTable_OTHERS) || defined(DOCUMENTATION)
34546#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
34548 friend class boost::serialization::access;
34551 void serialize(S &s,
const unsigned ) {
34554 s & BOOST_SERIALIZATION_NVP(p_elements);
34560 std::vector<SgAsmCilMethodSpec*>
const& get_elements()
const;
34561 std::vector<SgAsmCilMethodSpec*>& get_elements();
34581#ifdef DOCUMENTATION
34590DECLARE_LEAF_CLASS(AsmCilMethodSpec);
34591IS_SERIALIZABLE(AsmCilMethodSpec);
34593#ifndef DOCUMENTATION
34594AsmCilMethodSpec.useSmallHeader(
true);
34597#ifdef DOCUMENTATION
34602#ifndef DOCUMENTATION
34603 AsmCilMethodSpec.setDataPrototype(
34604 "uint32_t",
"Method",
"= 0",
34605 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34608#ifndef DOCUMENTATION
34609 AsmCilMethodSpec.setDataPrototype(
34610 "uint32_t",
"Instantiation",
"= 0",
34611 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34614 DECLARE_OTHERS(AsmCilMethodSpec);
34615#if defined(SgAsmCilMethodSpec_OTHERS) || defined(DOCUMENTATION)
34618#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
34620 friend class boost::serialization::access;
34623 void serialize(S &s,
const unsigned ) {
34626 s & BOOST_SERIALIZATION_NVP(p_Method);
34627 s & BOOST_SERIALIZATION_NVP(p_Instantiation);
34652 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
34653 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
34654 void dump(std::ostream&)
const;
34657 const std::uint8_t* get_Instantiation_blob()
const;
34675#ifdef DOCUMENTATION
34684DECLARE_LEAF_CLASS(AsmCilMethodSemanticsTable);
34685IS_SERIALIZABLE(AsmCilMethodSemanticsTable);
34687#ifndef DOCUMENTATION
34688AsmCilMethodSemanticsTable.useSmallHeader(
true);
34691#ifdef DOCUMENTATION
34696#ifndef DOCUMENTATION
34697 AsmCilMethodSemanticsTable.setDataPrototype(
34698 "std::vector<SgAsmCilMethodSemantics*>",
"elements",
"",
34699 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
34702 DECLARE_OTHERS(AsmCilMethodSemanticsTable);
34703#if defined(SgAsmCilMethodSemanticsTable_OTHERS) || defined(DOCUMENTATION)
34706#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
34708 friend class boost::serialization::access;
34711 void serialize(S &s,
const unsigned ) {
34714 s & BOOST_SERIALIZATION_NVP(p_elements);
34720 std::vector<SgAsmCilMethodSemantics*>
const& get_elements()
const;
34721 std::vector<SgAsmCilMethodSemantics*>& get_elements();
34741#ifdef DOCUMENTATION
34750DECLARE_LEAF_CLASS(AsmCilMethodSemantics);
34751IS_SERIALIZABLE(AsmCilMethodSemantics);
34753#ifndef DOCUMENTATION
34754AsmCilMethodSemantics.useSmallHeader(
true);
34757#ifdef DOCUMENTATION
34762#ifndef DOCUMENTATION
34763 AsmCilMethodSemantics.setDataPrototype(
34764 "uint16_t",
"Semantics",
"= 0",
34765 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34768#ifndef DOCUMENTATION
34769 AsmCilMethodSemantics.setDataPrototype(
34770 "uint32_t",
"Method",
"= 0",
34771 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34774#ifndef DOCUMENTATION
34775 AsmCilMethodSemantics.setDataPrototype(
34776 "uint32_t",
"Association",
"= 0",
34777 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34780 DECLARE_OTHERS(AsmCilMethodSemantics);
34781#if defined(SgAsmCilMethodSemantics_OTHERS) || defined(DOCUMENTATION)
34784#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
34786 friend class boost::serialization::access;
34789 void serialize(S &s,
const unsigned ) {
34792 s & BOOST_SERIALIZATION_NVP(p_Semantics);
34793 s & BOOST_SERIALIZATION_NVP(p_Method);
34794 s & BOOST_SERIALIZATION_NVP(p_Association);
34829 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
34830 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
34831 void dump(std::ostream&)
const;
34852#ifdef DOCUMENTATION
34861DECLARE_LEAF_CLASS(AsmCilMethodImplTable);
34862IS_SERIALIZABLE(AsmCilMethodImplTable);
34864#ifndef DOCUMENTATION
34865AsmCilMethodImplTable.useSmallHeader(
true);
34868#ifdef DOCUMENTATION
34873#ifndef DOCUMENTATION
34874 AsmCilMethodImplTable.setDataPrototype(
34875 "std::vector<SgAsmCilMethodImpl*>",
"elements",
"",
34876 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
34879 DECLARE_OTHERS(AsmCilMethodImplTable);
34880#if defined(SgAsmCilMethodImplTable_OTHERS) || defined(DOCUMENTATION)
34883#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
34885 friend class boost::serialization::access;
34888 void serialize(S &s,
const unsigned ) {
34891 s & BOOST_SERIALIZATION_NVP(p_elements);
34897 std::vector<SgAsmCilMethodImpl*>
const& get_elements()
const;
34898 std::vector<SgAsmCilMethodImpl*>& get_elements();
34918#ifdef DOCUMENTATION
34927DECLARE_LEAF_CLASS(AsmCilMethodImpl);
34928IS_SERIALIZABLE(AsmCilMethodImpl);
34930#ifndef DOCUMENTATION
34931AsmCilMethodImpl.useSmallHeader(
true);
34934#ifdef DOCUMENTATION
34939#ifndef DOCUMENTATION
34940 AsmCilMethodImpl.setDataPrototype(
34941 "uint32_t",
"Class",
"= 0",
34942 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34945#ifndef DOCUMENTATION
34946 AsmCilMethodImpl.setDataPrototype(
34947 "uint32_t",
"MethodBody",
"= 0",
34948 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34951#ifndef DOCUMENTATION
34952 AsmCilMethodImpl.setDataPrototype(
34953 "uint32_t",
"MethodDeclaration",
"= 0",
34954 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
34957 DECLARE_OTHERS(AsmCilMethodImpl);
34958#if defined(SgAsmCilMethodImpl_OTHERS) || defined(DOCUMENTATION)
34961#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
34963 friend class boost::serialization::access;
34966 void serialize(S &s,
const unsigned ) {
34969 s & BOOST_SERIALIZATION_NVP(p_Class);
34970 s & BOOST_SERIALIZATION_NVP(p_MethodBody);
34971 s & BOOST_SERIALIZATION_NVP(p_MethodDeclaration);
35006 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
35007 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
35008 void dump(std::ostream&)
const;
35030#ifdef DOCUMENTATION
35039DECLARE_LEAF_CLASS(AsmCilMethodDefTable);
35040IS_SERIALIZABLE(AsmCilMethodDefTable);
35042#ifndef DOCUMENTATION
35043AsmCilMethodDefTable.useSmallHeader(
true);
35046#ifdef DOCUMENTATION
35051#ifndef DOCUMENTATION
35052 AsmCilMethodDefTable.setDataPrototype(
35053 "std::vector<SgAsmCilMethodDef*>",
"elements",
"",
35054 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35057 DECLARE_OTHERS(AsmCilMethodDefTable);
35058#if defined(SgAsmCilMethodDefTable_OTHERS) || defined(DOCUMENTATION)
35061#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
35063 friend class boost::serialization::access;
35066 void serialize(S &s,
const unsigned ) {
35069 s & BOOST_SERIALIZATION_NVP(p_elements);
35075 std::vector<SgAsmCilMethodDef*>
const& get_elements()
const;
35076 std::vector<SgAsmCilMethodDef*>& get_elements();
35096#ifdef DOCUMENTATION
35105DECLARE_LEAF_CLASS(AsmCilMethodDef);
35106IS_SERIALIZABLE(AsmCilMethodDef);
35108#ifndef DOCUMENTATION
35109AsmCilMethodDef.useSmallHeader(
true);
35112#ifdef DOCUMENTATION
35117#ifndef DOCUMENTATION
35118 AsmCilMethodDef.setDataPrototype(
35119 "uint32_t",
"RVA",
"= 0",
35120 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35123#ifndef DOCUMENTATION
35124 AsmCilMethodDef.setDataPrototype(
35125 "uint16_t",
"ImplFlags",
"= 0",
35126 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35129#ifndef DOCUMENTATION
35130 AsmCilMethodDef.setDataPrototype(
35131 "uint16_t",
"Flags",
"= 0",
35132 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35135#ifndef DOCUMENTATION
35136 AsmCilMethodDef.setDataPrototype(
35137 "uint32_t",
"Name",
"= 0",
35138 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35141#ifndef DOCUMENTATION
35142 AsmCilMethodDef.setDataPrototype(
35143 "uint32_t",
"Signature",
"= 0",
35144 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35147#ifndef DOCUMENTATION
35148 AsmCilMethodDef.setDataPrototype(
35149 "uint32_t",
"ParamList",
"= 0",
35150 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35153#ifndef DOCUMENTATION
35154 AsmCilMethodDef.setDataPrototype(
35155 "SgAsmBlock*",
"body",
"= 0",
35156 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35159#ifndef DOCUMENTATION
35160 AsmCilMethodDef.setDataPrototype(
35161 "bool",
"initLocals",
"= 0",
35162 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35165#ifndef DOCUMENTATION
35166 AsmCilMethodDef.setDataPrototype(
35167 "uint32_t",
"stackSize",
"= 0",
35168 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35171#ifndef DOCUMENTATION
35172 AsmCilMethodDef.setDataPrototype(
35173 "bool",
"hasMoreSections",
"= 0",
35174 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35177#ifndef DOCUMENTATION
35178 AsmCilMethodDef.setDataPrototype(
35179 "uint32_t",
"localVarSigTok",
"= 0",
35180 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35183#ifndef DOCUMENTATION
35184 AsmCilMethodDef.setDataPrototype(
35185 "std::vector<SgAsmCilMethodData*>",
"methodData",
"",
35186 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35189#ifndef DOCUMENTATION
35190 AsmCilMethodDef.setDataPrototype(
35191 "int",
"bodyState",
"= BDY_NOT_PROCESSED",
35192 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35195 DECLARE_OTHERS(AsmCilMethodDef);
35196#if defined(SgAsmCilMethodDef_OTHERS) || defined(DOCUMENTATION)
35199#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
35201 friend class boost::serialization::access;
35204 void serialize(S &s,
const unsigned ) {
35207 s & BOOST_SERIALIZATION_NVP(p_RVA);
35208 s & BOOST_SERIALIZATION_NVP(p_ImplFlags);
35209 s & BOOST_SERIALIZATION_NVP(p_Flags);
35210 s & BOOST_SERIALIZATION_NVP(p_Name);
35211 s & BOOST_SERIALIZATION_NVP(p_Signature);
35212 s & BOOST_SERIALIZATION_NVP(p_ParamList);
35213 s & BOOST_SERIALIZATION_NVP(p_body);
35214 s & BOOST_SERIALIZATION_NVP(p_initLocals);
35215 s & BOOST_SERIALIZATION_NVP(p_stackSize);
35216 s & BOOST_SERIALIZATION_NVP(p_hasMoreSections);
35217 s & BOOST_SERIALIZATION_NVP(p_localVarSigTok);
35218 s & BOOST_SERIALIZATION_NVP(p_methodData);
35219 s & BOOST_SERIALIZATION_NVP(p_bodyState);
35224 using BodyState = int;
35382 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
35383 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
35384 void dump(std::ostream&)
const;
35386 const std::uint8_t* get_Name_string()
const;
35387 const std::uint8_t* get_Signature_blob()
const;
35406#ifdef DOCUMENTATION
35415DECLARE_LEAF_CLASS(AsmCilMethodData);
35416IS_SERIALIZABLE(AsmCilMethodData);
35418#ifndef DOCUMENTATION
35419AsmCilMethodData.useSmallHeader(
true);
35422DECLARE_HEADERS(AsmCilMethodData);
35423#if defined(SgAsmCilMethodData_HEADERS) || defined(DOCUMENTATION)
35427#ifdef DOCUMENTATION
35435#ifndef DOCUMENTATION
35436 AsmCilMethodData.setDataPrototype(
35437 "uint64_t",
"kind",
"= 0",
35438 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35441#ifndef DOCUMENTATION
35442 AsmCilMethodData.setDataPrototype(
35443 "std::uint32_t",
"dataSize",
"= 0",
35444 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35447#ifndef DOCUMENTATION
35448 AsmCilMethodData.setDataPrototype(
35449 "std::vector<SgAsmCilExceptionData*>",
"clauses",
"",
35450 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35453 DECLARE_OTHERS(AsmCilMethodData);
35454#if defined(SgAsmCilMethodData_OTHERS) || defined(DOCUMENTATION)
35457#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
35459 friend class boost::serialization::access;
35462 void serialize(S &s,
const unsigned ) {
35464 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmCilNode);
35465 s & BOOST_SERIALIZATION_NVP(p_kind);
35466 s & BOOST_SERIALIZATION_NVP(p_dataSize);
35467 s & BOOST_SERIALIZATION_NVP(p_clauses);
35474 CorILMethod_Sect_EHTable = 0x01,
35475 CorILMethod_Sect_OptILTable = 0x02,
35476 CorILMethod_Sect_FatFormat = 0x40,
35477 CorILMethod_Sect_MoreSects = 0x80,
35482 uint64_t
const& get_kind()
const;
35483 void set_kind(uint64_t
const&);
35486 std::uint32_t
const& get_dataSize()
const;
35487 void set_dataSize(std::uint32_t
const&);
35490 std::vector<SgAsmCilExceptionData*>
const& get_Clauses()
const;
35491 std::vector<SgAsmCilExceptionData*>& get_Clauses();
35493 bool isEHTable()
const
35495 return (p_kind & CorILMethod_Sect_EHTable) == CorILMethod_Sect_EHTable;
35498 bool isOptILTable()
const
35500 const bool res = (p_kind & CorILMethod_Sect_OptILTable) == CorILMethod_Sect_OptILTable;
35502 ASSERT_require(!res);
35506 bool usesFatFormat()
const
35508 return (p_kind & CorILMethod_Sect_FatFormat) == CorILMethod_Sect_FatFormat;
35511 bool hasMoreSections()
const
35513 return (p_kind & CorILMethod_Sect_MoreSects) == CorILMethod_Sect_MoreSects;
35532#ifdef DOCUMENTATION
35541DECLARE_LEAF_CLASS(AsmCilMetadataRoot);
35542IS_SERIALIZABLE(AsmCilMetadataRoot);
35544#ifndef DOCUMENTATION
35545AsmCilMetadataRoot.useSmallHeader(
true);
35548#ifdef DOCUMENTATION
35553#ifndef DOCUMENTATION
35554 AsmCilMetadataRoot.setDataPrototype(
35555 "uint32_t",
"Signature",
"= 0",
35556 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35559#ifndef DOCUMENTATION
35560 AsmCilMetadataRoot.setDataPrototype(
35561 "uint16_t",
"MajorVersion",
"= 0",
35562 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35565#ifndef DOCUMENTATION
35566 AsmCilMetadataRoot.setDataPrototype(
35567 "uint16_t",
"MinorVersion",
"= 0",
35568 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35571#ifndef DOCUMENTATION
35572 AsmCilMetadataRoot.setDataPrototype(
35573 "uint32_t",
"Reserved0",
"= 0",
35574 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35577#ifndef DOCUMENTATION
35578 AsmCilMetadataRoot.setDataPrototype(
35579 "uint32_t",
"Length",
"= 0",
35580 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35583#ifndef DOCUMENTATION
35584 AsmCilMetadataRoot.setDataPrototype(
35585 "std::string",
"Version",
"",
35586 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35589#ifndef DOCUMENTATION
35590 AsmCilMetadataRoot.setDataPrototype(
35591 "uint32_t",
"VersionPadding",
"= 0",
35592 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35595#ifndef DOCUMENTATION
35596 AsmCilMetadataRoot.setDataPrototype(
35597 "uint16_t",
"Flags",
"= 0",
35598 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35601#ifndef DOCUMENTATION
35602 AsmCilMetadataRoot.setDataPrototype(
35603 "uint16_t",
"NumberOfStreams",
"= 0",
35604 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35607#ifndef DOCUMENTATION
35608 AsmCilMetadataRoot.setDataPrototype(
35609 "std::vector<SgAsmCilDataStream*>",
"Streams",
"",
35610 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35613#ifndef DOCUMENTATION
35614 AsmCilMetadataRoot.setDataPrototype(
35615 "bool",
"ErrorFree",
"= true",
35616 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35619 DECLARE_OTHERS(AsmCilMetadataRoot);
35620#if defined(SgAsmCilMetadataRoot_OTHERS) || defined(DOCUMENTATION)
35623#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
35625 friend class boost::serialization::access;
35628 void serialize(S &s,
const unsigned ) {
35630 s & BOOST_SERIALIZATION_BASE_OBJECT_NVP(
SgAsmCilNode);
35631 s & BOOST_SERIALIZATION_NVP(p_Signature);
35632 s & BOOST_SERIALIZATION_NVP(p_MajorVersion);
35633 s & BOOST_SERIALIZATION_NVP(p_MinorVersion);
35634 s & BOOST_SERIALIZATION_NVP(p_Reserved0);
35635 s & BOOST_SERIALIZATION_NVP(p_Length);
35636 s & BOOST_SERIALIZATION_NVP(p_Version);
35637 s & BOOST_SERIALIZATION_NVP(p_VersionPadding);
35638 s & BOOST_SERIALIZATION_NVP(p_Flags);
35639 s & BOOST_SERIALIZATION_NVP(p_NumberOfStreams);
35640 s & BOOST_SERIALIZATION_NVP(p_Streams);
35641 s & BOOST_SERIALIZATION_NVP(p_ErrorFree);
35736 mutable int8_t idxStringHeap = -1;
35737 mutable int8_t idxBlobHeap = -1;
35738 mutable int8_t idxUsHeap = -1;
35739 mutable int8_t idxGuidHeap = -1;
35740 mutable int8_t idxMetadataHeap = -1;
35758 void parse(
const std::vector<uint8_t>& buf,
size_t index);
35764 void unparse(std::vector<uint8_t>&, std::size_t)
const;
35795#ifdef DOCUMENTATION
35804DECLARE_LEAF_CLASS(AsmCilMetadataHeap);
35805IS_SERIALIZABLE(AsmCilMetadataHeap);
35807#ifndef DOCUMENTATION
35808AsmCilMetadataHeap.useSmallHeader(
true);
35811DECLARE_HEADERS(AsmCilMetadataHeap);
35812#if defined(SgAsmCilMetadataHeap_HEADERS) || defined(DOCUMENTATION)
35813#ifdef ROSE_SgAsmCilMetadataHeap_IMPL
35814#include <SgAsmCilAssemblyTable.h>
35815#include <SgAsmCilAssemblyOSTable.h>
35816#include <SgAsmCilAssemblyProcessorTable.h>
35817#include <SgAsmCilAssemblyRefTable.h>
35818#include <SgAsmCilAssemblyRefOSTable.h>
35819#include <SgAsmCilAssemblyRefProcessorTable.h>
35820#include <SgAsmCilClassLayoutTable.h>
35821#include <SgAsmCilConstantTable.h>
35822#include <SgAsmCilCustomAttributeTable.h>
35823#include <SgAsmCilDeclSecurityTable.h>
35824#include <SgAsmCilEventTable.h>
35825#include <SgAsmCilEventMapTable.h>
35826#include <SgAsmCilExportedTypeTable.h>
35827#include <SgAsmCilFieldTable.h>
35828#include <SgAsmCilFieldLayoutTable.h>
35829#include <SgAsmCilFieldMarshalTable.h>
35830#include <SgAsmCilFieldRVATable.h>
35831#include <SgAsmCilFileTable.h>
35832#include <SgAsmCilGenericParamTable.h>
35833#include <SgAsmCilGenericParamConstraintTable.h>
35834#include <SgAsmCilImplMapTable.h>
35835#include <SgAsmCilInterfaceImplTable.h>
35836#include <SgAsmCilManifestResourceTable.h>
35837#include <SgAsmCilMemberRefTable.h>
35838#include <SgAsmCilMethodDefTable.h>
35839#include <SgAsmCilMethodImplTable.h>
35840#include <SgAsmCilMethodSemanticsTable.h>
35841#include <SgAsmCilMethodSpecTable.h>
35842#include <SgAsmCilModuleTable.h>
35843#include <SgAsmCilModuleRefTable.h>
35844#include <SgAsmCilNestedClassTable.h>
35845#include <SgAsmCilParamTable.h>
35846#include <SgAsmCilPropertyTable.h>
35847#include <SgAsmCilPropertyMapTable.h>
35848#include <SgAsmCilStandAloneSigTable.h>
35849#include <SgAsmCilTypeDefTable.h>
35850#include <SgAsmCilTypeRefTable.h>
35851#include <SgAsmCilTypeSpecTable.h>
35855#ifdef DOCUMENTATION
35860#ifndef DOCUMENTATION
35861 AsmCilMetadataHeap.setDataPrototype(
35862 "uint32_t",
"ReservedAlwaysZero",
"= 0",
35863 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35866#ifndef DOCUMENTATION
35867 AsmCilMetadataHeap.setDataPrototype(
35868 "uint8_t",
"MajorVersion",
"= 0",
35869 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35872#ifndef DOCUMENTATION
35873 AsmCilMetadataHeap.setDataPrototype(
35874 "uint8_t",
"MinorVersion",
"= 0",
35875 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35878#ifndef DOCUMENTATION
35879 AsmCilMetadataHeap.setDataPrototype(
35880 "uint8_t",
"HeapSizes",
"= 0",
35881 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35884#ifndef DOCUMENTATION
35885 AsmCilMetadataHeap.setDataPrototype(
35886 "uint8_t",
"ReservedAlwaysOne",
"= 0",
35887 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35890#ifndef DOCUMENTATION
35891 AsmCilMetadataHeap.setDataPrototype(
35892 "uint64_t",
"Valid",
"= 0",
35893 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35896#ifndef DOCUMENTATION
35897 AsmCilMetadataHeap.setDataPrototype(
35898 "uint64_t",
"Sorted",
"= 0",
35899 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35902#ifndef DOCUMENTATION
35903 AsmCilMetadataHeap.setDataPrototype(
35904 "std::vector<uint32_t>",
"NumberOfRows",
"",
35905 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35908#ifndef DOCUMENTATION
35909 AsmCilMetadataHeap.setDataPrototype(
35910 "uint64_t",
"DataSizeFlags",
"= 0",
35911 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
35914#ifndef DOCUMENTATION
35915 AsmCilMetadataHeap.setDataPrototype(
35916 "SgAsmCilAssemblyTable*",
"AssemblyTable",
"",
35917 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35920#ifndef DOCUMENTATION
35921 AsmCilMetadataHeap.setDataPrototype(
35922 "SgAsmCilAssemblyOSTable*",
"AssemblyOSTable",
"",
35923 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35926#ifndef DOCUMENTATION
35927 AsmCilMetadataHeap.setDataPrototype(
35928 "SgAsmCilAssemblyProcessorTable*",
"AssemblyProcessorTable",
"",
35929 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35932#ifndef DOCUMENTATION
35933 AsmCilMetadataHeap.setDataPrototype(
35934 "SgAsmCilAssemblyRefTable*",
"AssemblyRefTable",
"",
35935 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35938#ifndef DOCUMENTATION
35939 AsmCilMetadataHeap.setDataPrototype(
35940 "SgAsmCilAssemblyRefOSTable*",
"AssemblyRefOSTable",
"",
35941 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35944#ifndef DOCUMENTATION
35945 AsmCilMetadataHeap.setDataPrototype(
35946 "SgAsmCilAssemblyRefProcessorTable*",
"AssemblyRefProcessorTable",
"",
35947 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35950#ifndef DOCUMENTATION
35951 AsmCilMetadataHeap.setDataPrototype(
35952 "SgAsmCilClassLayoutTable*",
"ClassLayoutTable",
"",
35953 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35956#ifndef DOCUMENTATION
35957 AsmCilMetadataHeap.setDataPrototype(
35958 "SgAsmCilConstantTable*",
"ConstantTable",
"",
35959 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35962#ifndef DOCUMENTATION
35963 AsmCilMetadataHeap.setDataPrototype(
35964 "SgAsmCilCustomAttributeTable*",
"CustomAttributeTable",
"",
35965 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35968#ifndef DOCUMENTATION
35969 AsmCilMetadataHeap.setDataPrototype(
35970 "SgAsmCilDeclSecurityTable*",
"DeclSecurityTable",
"",
35971 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35974#ifndef DOCUMENTATION
35975 AsmCilMetadataHeap.setDataPrototype(
35976 "SgAsmCilEventTable*",
"EventTable",
"",
35977 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35980#ifndef DOCUMENTATION
35981 AsmCilMetadataHeap.setDataPrototype(
35982 "SgAsmCilEventMapTable*",
"EventMapTable",
"",
35983 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35986#ifndef DOCUMENTATION
35987 AsmCilMetadataHeap.setDataPrototype(
35988 "SgAsmCilExportedTypeTable*",
"ExportedTypeTable",
"",
35989 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35992#ifndef DOCUMENTATION
35993 AsmCilMetadataHeap.setDataPrototype(
35994 "SgAsmCilFieldTable*",
"FieldTable",
"",
35995 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
35998#ifndef DOCUMENTATION
35999 AsmCilMetadataHeap.setDataPrototype(
36000 "SgAsmCilFieldLayoutTable*",
"FieldLayoutTable",
"",
36001 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36004#ifndef DOCUMENTATION
36005 AsmCilMetadataHeap.setDataPrototype(
36006 "SgAsmCilFieldMarshalTable*",
"FieldMarshalTable",
"",
36007 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36010#ifndef DOCUMENTATION
36011 AsmCilMetadataHeap.setDataPrototype(
36012 "SgAsmCilFieldRVATable*",
"FieldRVATable",
"",
36013 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36016#ifndef DOCUMENTATION
36017 AsmCilMetadataHeap.setDataPrototype(
36018 "SgAsmCilFileTable*",
"FileTable",
"",
36019 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36022#ifndef DOCUMENTATION
36023 AsmCilMetadataHeap.setDataPrototype(
36024 "SgAsmCilGenericParamTable*",
"GenericParamTable",
"",
36025 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36028#ifndef DOCUMENTATION
36029 AsmCilMetadataHeap.setDataPrototype(
36030 "SgAsmCilGenericParamConstraintTable*",
"GenericParamConstraintTable",
"",
36031 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36034#ifndef DOCUMENTATION
36035 AsmCilMetadataHeap.setDataPrototype(
36036 "SgAsmCilImplMapTable*",
"ImplMapTable",
"",
36037 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36040#ifndef DOCUMENTATION
36041 AsmCilMetadataHeap.setDataPrototype(
36042 "SgAsmCilInterfaceImplTable*",
"InterfaceImplTable",
"",
36043 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36046#ifndef DOCUMENTATION
36047 AsmCilMetadataHeap.setDataPrototype(
36048 "SgAsmCilManifestResourceTable*",
"ManifestResourceTable",
"",
36049 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36052#ifndef DOCUMENTATION
36053 AsmCilMetadataHeap.setDataPrototype(
36054 "SgAsmCilMemberRefTable*",
"MemberRefTable",
"",
36055 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36058#ifndef DOCUMENTATION
36059 AsmCilMetadataHeap.setDataPrototype(
36060 "SgAsmCilMethodDefTable*",
"MethodDefTable",
"",
36061 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36064#ifndef DOCUMENTATION
36065 AsmCilMetadataHeap.setDataPrototype(
36066 "SgAsmCilMethodImplTable*",
"MethodImplTable",
"",
36067 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36070#ifndef DOCUMENTATION
36071 AsmCilMetadataHeap.setDataPrototype(
36072 "SgAsmCilMethodSemanticsTable*",
"MethodSemanticsTable",
"",
36073 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36076#ifndef DOCUMENTATION
36077 AsmCilMetadataHeap.setDataPrototype(
36078 "SgAsmCilMethodSpecTable*",
"MethodSpecTable",
"",
36079 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36082#ifndef DOCUMENTATION
36083 AsmCilMetadataHeap.setDataPrototype(
36084 "SgAsmCilModuleTable*",
"ModuleTable",
"",
36085 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36088#ifndef DOCUMENTATION
36089 AsmCilMetadataHeap.setDataPrototype(
36090 "SgAsmCilModuleRefTable*",
"ModuleRefTable",
"",
36091 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36094#ifndef DOCUMENTATION
36095 AsmCilMetadataHeap.setDataPrototype(
36096 "SgAsmCilNestedClassTable*",
"NestedClassTable",
"",
36097 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36100#ifndef DOCUMENTATION
36101 AsmCilMetadataHeap.setDataPrototype(
36102 "SgAsmCilParamTable*",
"ParamTable",
"",
36103 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36106#ifndef DOCUMENTATION
36107 AsmCilMetadataHeap.setDataPrototype(
36108 "SgAsmCilPropertyTable*",
"PropertyTable",
"",
36109 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36112#ifndef DOCUMENTATION
36113 AsmCilMetadataHeap.setDataPrototype(
36114 "SgAsmCilPropertyMapTable*",
"PropertyMapTable",
"",
36115 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36118#ifndef DOCUMENTATION
36119 AsmCilMetadataHeap.setDataPrototype(
36120 "SgAsmCilStandAloneSigTable*",
"StandAloneSigTable",
"",
36121 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36124#ifndef DOCUMENTATION
36125 AsmCilMetadataHeap.setDataPrototype(
36126 "SgAsmCilTypeDefTable*",
"TypeDefTable",
"",
36127 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36130#ifndef DOCUMENTATION
36131 AsmCilMetadataHeap.setDataPrototype(
36132 "SgAsmCilTypeRefTable*",
"TypeRefTable",
"",
36133 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36136#ifndef DOCUMENTATION
36137 AsmCilMetadataHeap.setDataPrototype(
36138 "SgAsmCilTypeSpecTable*",
"TypeSpecTable",
"",
36139 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36142 DECLARE_OTHERS(AsmCilMetadataHeap);
36143#if defined(SgAsmCilMetadataHeap_OTHERS) || defined(DOCUMENTATION)
36146#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
36148 friend class boost::serialization::access;
36151 void serialize(S &s,
const unsigned ) {
36154 s & BOOST_SERIALIZATION_NVP(p_ReservedAlwaysZero);
36155 s & BOOST_SERIALIZATION_NVP(p_MajorVersion);
36156 s & BOOST_SERIALIZATION_NVP(p_MinorVersion);
36157 s & BOOST_SERIALIZATION_NVP(p_HeapSizes);
36158 s & BOOST_SERIALIZATION_NVP(p_ReservedAlwaysOne);
36159 s & BOOST_SERIALIZATION_NVP(p_Valid);
36160 s & BOOST_SERIALIZATION_NVP(p_Sorted);
36161 s & BOOST_SERIALIZATION_NVP(p_NumberOfRows);
36162 s & BOOST_SERIALIZATION_NVP(p_DataSizeFlags);
36163 s & BOOST_SERIALIZATION_NVP(p_AssemblyTable);
36164 s & BOOST_SERIALIZATION_NVP(p_AssemblyOSTable);
36165 s & BOOST_SERIALIZATION_NVP(p_AssemblyProcessorTable);
36166 s & BOOST_SERIALIZATION_NVP(p_AssemblyRefTable);
36167 s & BOOST_SERIALIZATION_NVP(p_AssemblyRefOSTable);
36168 s & BOOST_SERIALIZATION_NVP(p_AssemblyRefProcessorTable);
36169 s & BOOST_SERIALIZATION_NVP(p_ClassLayoutTable);
36170 s & BOOST_SERIALIZATION_NVP(p_ConstantTable);
36171 s & BOOST_SERIALIZATION_NVP(p_CustomAttributeTable);
36172 s & BOOST_SERIALIZATION_NVP(p_DeclSecurityTable);
36173 s & BOOST_SERIALIZATION_NVP(p_EventTable);
36174 s & BOOST_SERIALIZATION_NVP(p_EventMapTable);
36175 s & BOOST_SERIALIZATION_NVP(p_ExportedTypeTable);
36176 s & BOOST_SERIALIZATION_NVP(p_FieldTable);
36177 s & BOOST_SERIALIZATION_NVP(p_FieldLayoutTable);
36178 s & BOOST_SERIALIZATION_NVP(p_FieldMarshalTable);
36179 s & BOOST_SERIALIZATION_NVP(p_FieldRVATable);
36180 s & BOOST_SERIALIZATION_NVP(p_FileTable);
36181 s & BOOST_SERIALIZATION_NVP(p_GenericParamTable);
36182 s & BOOST_SERIALIZATION_NVP(p_GenericParamConstraintTable);
36183 s & BOOST_SERIALIZATION_NVP(p_ImplMapTable);
36184 s & BOOST_SERIALIZATION_NVP(p_InterfaceImplTable);
36185 s & BOOST_SERIALIZATION_NVP(p_ManifestResourceTable);
36186 s & BOOST_SERIALIZATION_NVP(p_MemberRefTable);
36187 s & BOOST_SERIALIZATION_NVP(p_MethodDefTable);
36188 s & BOOST_SERIALIZATION_NVP(p_MethodImplTable);
36189 s & BOOST_SERIALIZATION_NVP(p_MethodSemanticsTable);
36190 s & BOOST_SERIALIZATION_NVP(p_MethodSpecTable);
36191 s & BOOST_SERIALIZATION_NVP(p_ModuleTable);
36192 s & BOOST_SERIALIZATION_NVP(p_ModuleRefTable);
36193 s & BOOST_SERIALIZATION_NVP(p_NestedClassTable);
36194 s & BOOST_SERIALIZATION_NVP(p_ParamTable);
36195 s & BOOST_SERIALIZATION_NVP(p_PropertyTable);
36196 s & BOOST_SERIALIZATION_NVP(p_PropertyMapTable);
36197 s & BOOST_SERIALIZATION_NVP(p_StandAloneSigTable);
36198 s & BOOST_SERIALIZATION_NVP(p_TypeDefTable);
36199 s & BOOST_SERIALIZATION_NVP(p_TypeRefTable);
36200 s & BOOST_SERIALIZATION_NVP(p_TypeSpecTable);
36585 e_ref_string_heap = 1 << 0,
36586 e_ref_guid_heap = 1 << 1,
36587 e_ref_blob_heap = 1 << 2,
36589 e_ref_assembly_ref = 1 << 3,
36590 e_ref_type_def = 1 << 4,
36591 e_ref_event = 1 << 5,
36592 e_ref_field = 1 << 6,
36593 e_ref_generic_param = 1 << 7,
36594 e_ref_module_ref = 1 << 8,
36595 e_ref_method_def = 1 << 9,
36596 e_ref_param = 1 << 10,
36597 e_ref_property = 1 << 11,
36599 e_ref_has_constant = 1 << 12,
36600 e_ref_has_custom_attribute = 1 << 13,
36601 e_ref_has_decl_security = 1 << 14,
36602 e_ref_has_field_marshall = 1 << 15,
36603 e_ref_has_semantics = 1 << 16,
36604 e_ref_method_def_or_ref = 1 << 17,
36605 e_ref_type_def_or_ref = 1 << 18,
36606 e_ref_implementation = 1 << 19,
36607 e_ref_member_forwarded = 1 << 20,
36608 e_ref_member_ref_parent = 1 << 21,
36609 e_ref_type_or_method_def = 1 << 22,
36610 e_ref_custom_attribute_type = 1 << 23,
36611 e_ref_resolution_scope = 1 << 24,
36612 e_ref_last = 1 << 25,
36615 enum TableKind : std::uint8_t
36619 e_AssemblyOS = 0x22,
36620 e_AssemblyProcessor = 0x21,
36621 e_AssemblyRef = 0x23,
36622 e_AssemblyRefOS = 0x25,
36623 e_AssemblyRefProcessor = 0x24,
36624 e_ClassLayout = 0x0F,
36626 e_CustomAttribute = 0x0C,
36627 e_DeclSecurity = 0x0E,
36630 e_ExportedType = 0x27,
36632 e_FieldLayout = 0x10,
36633 e_FieldMarshal = 0x0D,
36636 e_GenericParam = 0x2A,
36637 e_GenericParamConstraint = 0x2C,
36639 e_InterfaceImpl = 0x09,
36640 e_ManifestResource = 0x28,
36641 e_MemberRef = 0x0A,
36642 e_MethodDef = 0x06,
36643 e_MethodImpl = 0x19,
36644 e_MethodSemantics = 0x18,
36645 e_MethodSpec = 0x2B,
36647 e_ModuleRef = 0x1A,
36648 e_NestedClass = 0x29,
36651 e_PropertyMap = 0x15,
36652 e_StandAloneSig = 0x11,
36656 e_Unknown_table_kind = 0xFF
36660 void parse(
const std::vector<uint8_t>& buf,
size_t startOfMetaData)
override;
36663 void unparse(std::vector<uint8_t>& buf,
size_t startOfMetaData)
const override;
36666 void dump(std::ostream& os)
const override;
36695 uint32_t
const& Size,
36696 std::string
const& Name,
36697 uint32_t
const& NamePadding);
36708#ifdef DOCUMENTATION
36717DECLARE_LEAF_CLASS(AsmCilMemberRefTable);
36718IS_SERIALIZABLE(AsmCilMemberRefTable);
36720#ifndef DOCUMENTATION
36721AsmCilMemberRefTable.useSmallHeader(
true);
36724#ifdef DOCUMENTATION
36729#ifndef DOCUMENTATION
36730 AsmCilMemberRefTable.setDataPrototype(
36731 "std::vector<SgAsmCilMemberRef*>",
"elements",
"",
36732 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36735 DECLARE_OTHERS(AsmCilMemberRefTable);
36736#if defined(SgAsmCilMemberRefTable_OTHERS) || defined(DOCUMENTATION)
36739#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
36741 friend class boost::serialization::access;
36744 void serialize(S &s,
const unsigned ) {
36747 s & BOOST_SERIALIZATION_NVP(p_elements);
36753 std::vector<SgAsmCilMemberRef*>
const& get_elements()
const;
36754 std::vector<SgAsmCilMemberRef*>& get_elements();
36774#ifdef DOCUMENTATION
36783DECLARE_LEAF_CLASS(AsmCilMemberRef);
36784IS_SERIALIZABLE(AsmCilMemberRef);
36786#ifndef DOCUMENTATION
36787AsmCilMemberRef.useSmallHeader(
true);
36790#ifdef DOCUMENTATION
36795#ifndef DOCUMENTATION
36796 AsmCilMemberRef.setDataPrototype(
36797 "uint32_t",
"Class",
"= 0",
36798 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
36801#ifndef DOCUMENTATION
36802 AsmCilMemberRef.setDataPrototype(
36803 "uint32_t",
"Name",
"= 0",
36804 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
36807#ifndef DOCUMENTATION
36808 AsmCilMemberRef.setDataPrototype(
36809 "uint32_t",
"Signature",
"= 0",
36810 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
36813 DECLARE_OTHERS(AsmCilMemberRef);
36814#if defined(SgAsmCilMemberRef_OTHERS) || defined(DOCUMENTATION)
36817#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
36819 friend class boost::serialization::access;
36822 void serialize(S &s,
const unsigned ) {
36825 s & BOOST_SERIALIZATION_NVP(p_Class);
36826 s & BOOST_SERIALIZATION_NVP(p_Name);
36827 s & BOOST_SERIALIZATION_NVP(p_Signature);
36862 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
36863 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
36864 void dump(std::ostream&)
const;
36867 const std::uint8_t* get_Name_string()
const;
36868 const std::uint8_t* get_Signature_blob()
const;
36886#ifdef DOCUMENTATION
36895DECLARE_LEAF_CLASS(AsmCilManifestResourceTable);
36896IS_SERIALIZABLE(AsmCilManifestResourceTable);
36898#ifndef DOCUMENTATION
36899AsmCilManifestResourceTable.useSmallHeader(
true);
36902#ifdef DOCUMENTATION
36907#ifndef DOCUMENTATION
36908 AsmCilManifestResourceTable.setDataPrototype(
36909 "std::vector<SgAsmCilManifestResource*>",
"elements",
"",
36910 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
36913 DECLARE_OTHERS(AsmCilManifestResourceTable);
36914#if defined(SgAsmCilManifestResourceTable_OTHERS) || defined(DOCUMENTATION)
36917#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
36919 friend class boost::serialization::access;
36922 void serialize(S &s,
const unsigned ) {
36925 s & BOOST_SERIALIZATION_NVP(p_elements);
36931 std::vector<SgAsmCilManifestResource*>
const& get_elements()
const;
36932 std::vector<SgAsmCilManifestResource*>& get_elements();
36952#ifdef DOCUMENTATION
36961DECLARE_LEAF_CLASS(AsmCilManifestResource);
36962IS_SERIALIZABLE(AsmCilManifestResource);
36964#ifndef DOCUMENTATION
36965AsmCilManifestResource.useSmallHeader(
true);
36968#ifdef DOCUMENTATION
36973#ifndef DOCUMENTATION
36974 AsmCilManifestResource.setDataPrototype(
36975 "uint32_t",
"Offset",
"= 0",
36976 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
36979#ifndef DOCUMENTATION
36980 AsmCilManifestResource.setDataPrototype(
36981 "uint32_t",
"Flags",
"= 0",
36982 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
36985#ifndef DOCUMENTATION
36986 AsmCilManifestResource.setDataPrototype(
36987 "uint32_t",
"Name",
"= 0",
36988 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
36991#ifndef DOCUMENTATION
36992 AsmCilManifestResource.setDataPrototype(
36993 "uint32_t",
"Implementation",
"= 0",
36994 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE, COPY_DATA);
36997 DECLARE_OTHERS(AsmCilManifestResource);
36998#if defined(SgAsmCilManifestResource_OTHERS) || defined(DOCUMENTATION)
37001#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
37003 friend class boost::serialization::access;
37006 void serialize(S &s,
const unsigned ) {
37009 s & BOOST_SERIALIZATION_NVP(p_Offset);
37010 s & BOOST_SERIALIZATION_NVP(p_Flags);
37011 s & BOOST_SERIALIZATION_NVP(p_Name);
37012 s & BOOST_SERIALIZATION_NVP(p_Implementation);
37057 void parse(
const std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing);
37058 void unparse(std::vector<uint8_t>& buf,
size_t& index, uint64_t uses4byteIndexing)
const;
37059 void dump(std::ostream&)
const;
37061 const std::uint8_t* get_Name_string()
const;
37080#ifdef DOCUMENTATION
37089DECLARE_LEAF_CLASS(AsmCilInterfaceImplTable);
37090IS_SERIALIZABLE(AsmCilInterfaceImplTable);
37092#ifndef DOCUMENTATION
37093AsmCilInterfaceImplTable.useSmallHeader(
true);
37096#ifdef DOCUMENTATION
37101#ifndef DOCUMENTATION
37102 AsmCilInterfaceImplTable.setDataPrototype(
37103 "std::vector<SgAsmCilInterfaceImpl*>",
"elements",
"",
37104 NO_CONSTRUCTOR_PARAMETER, NO_ACCESS_FUNCTIONS, DEF_TRAVERSAL, NO_DELETE, COPY_DATA);
37107 DECLARE_OTHERS(AsmCilInterfaceImplTable);
37108#if defined(SgAsmCilInterfaceImplTable_OTHERS) || defined(DOCUMENTATION)
37111#ifdef ROSE_ENABLE_BOOST_SERIALIZATION
37113 friend class boost::serialization::access;
37116 void serialize(S &s,
const unsigned ) {
37119 s & BOOST_SERIALIZATION_NVP(p_elements);