1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 08:37:45 +00:00

LibDebug: Shrink some of the high-volume data structures

We quickly allocate a *ton* of these when loading large executables.
This commit is contained in:
Andreas Kling 2020-11-08 22:39:39 +01:00
parent 81b7c072ed
commit fc948ea3df
2 changed files with 6 additions and 5 deletions

View file

@ -43,7 +43,7 @@ public:
DIE(const CompilationUnit&, u32 offset); DIE(const CompilationUnit&, u32 offset);
struct AttributeValue { struct AttributeValue {
enum class Type { enum class Type : u8 {
UnsignedNumber, UnsignedNumber,
SignedNumber, SignedNumber,
String, String,

View file

@ -38,7 +38,7 @@ struct [[gnu::packed]] CompilationUnitHeader
u8 address_size; u8 address_size;
}; };
enum class EntryTag : u32 { enum class EntryTag : u16 {
None = 0, None = 0,
ArrayType = 0x1, ArrayType = 0x1,
ClassType = 0x2, ClassType = 0x2,
@ -113,7 +113,7 @@ enum class EntryTag : u32 {
HiUser = 0xffff, HiUser = 0xffff,
}; };
enum class Attribute : u32 { enum class Attribute : u16 {
None = 0, None = 0,
Sibling = 0x1, Sibling = 0x1,
Location = 0x2, Location = 0x2,
@ -240,7 +240,7 @@ enum class Attribute : u32 {
HiUser = 0x3fff, HiUser = 0x3fff,
}; };
enum class AttributeDataForm : u32 { enum class AttributeDataForm : u8 {
None = 0, None = 0,
Addr = 0x1, Addr = 0x1,
Block2 = 0x3, Block2 = 0x3,
@ -287,7 +287,8 @@ enum class AttributeDataForm : u32 {
AddrX4 = 0x2c AddrX4 = 0x2c
}; };
struct AttributeSpecification { struct [[gnu::packed]] AttributeSpecification
{
Attribute attribute; Attribute attribute;
AttributeDataForm form; AttributeDataForm form;
}; };