diff options
Diffstat (limited to 'Private/KernelKit')
| -rw-r--r-- | Private/KernelKit/PEF.hpp | 11 | ||||
| -rw-r--r-- | Private/KernelKit/PEFCodeManager.hxx | 1 |
2 files changed, 11 insertions, 1 deletions
diff --git a/Private/KernelKit/PEF.hpp b/Private/KernelKit/PEF.hpp index bc2e0990..9fabb189 100644 --- a/Private/KernelKit/PEF.hpp +++ b/Private/KernelKit/PEF.hpp @@ -24,7 +24,7 @@ #define kPefMagicLen 5 #define kPefVersion 1 -#define kPefNameLen 64 +#define kPefNameLen 255 /// @brief Preferred Executable Format. @@ -41,6 +41,13 @@ enum { }; enum { + kPefSubArchAMD, + kPefSubArchIntel, + kPefSubArchARM, + kPefSubArchIBM, +}; + +enum { kPefKindExec = 1, /* .exe */ kPefKindSharedObject = 2, /* .lib */ kPefKindObject = 4, /* .obj */ @@ -69,6 +76,8 @@ typedef struct PEFContainer final { typedef struct PEFCommandHeader final { Char Name[kPefNameLen]; /* container name */ + UInt32 Cpu; /* container cpu */ + UInt32 SubCpu; /* container sub-cpu */ UInt32 Flags; /* container flags */ UInt16 Kind; /* container kind */ UIntPtr Offset; /* content offset */ diff --git a/Private/KernelKit/PEFCodeManager.hxx b/Private/KernelKit/PEFCodeManager.hxx index 1f5269ae..80ac6e90 100644 --- a/Private/KernelKit/PEFCodeManager.hxx +++ b/Private/KernelKit/PEFCodeManager.hxx @@ -45,6 +45,7 @@ class PEFLoader : public LoaderInterface { private: Ref<StringView> fPath; VoidPtr fCachedBlob; + bool fFatBinary; bool fBad; }; |
