FileLoader_ELF.cc File Reference

Back to the index.

Macros
FileLoader_ELF.cc File Reference
#include <assert.h>
#include <string.h>
#include <fstream>
#include <iomanip>
#include "AddressDataBus.h"
#include "components/CPUComponent.h"
#include "FileLoader_ELF.h"
#include "thirdparty/exec_elf.h"

Go to the source code of this file.

Macros

#define N_ELF_MACHINE_TYPES   89
 
#define ELF_HEADER_VAR(hdr32, hdr64, type, name)
 

Macro Definition Documentation

◆ ELF_HEADER_VAR

#define ELF_HEADER_VAR (   hdr32,
  hdr64,
  type,
  name 
)
Value:
type name = elf32? hdr32->name \
: hdr64->name; \
if (elfDataEncoding == ELFDATA2LSB) { \
int size = elf32? sizeof(hdr32->name) : sizeof(hdr64->name); \
switch (size) { \
case 2: name = LE16_TO_HOST(name); break; \
case 4: name = LE32_TO_HOST(name); break; \
case 8: name = LE64_TO_HOST(name); break; \
} \
} else { \
int size = elf32? sizeof(hdr32->name) : sizeof(hdr64->name); \
switch (size) { \
case 2: name = BE16_TO_HOST(name); break; \
case 4: name = BE32_TO_HOST(name); break; \
case 8: name = BE64_TO_HOST(name); break; \
} \
}
char * name
Definition: cpu.h:334
#define LE16_TO_HOST(x)
Definition: misc.h:172
#define LE64_TO_HOST(x)
Definition: misc.h:188
#define BE32_TO_HOST(x)
Definition: misc.h:181
#define ELFDATA2LSB
Definition: exec_elf.h:154
#define LE32_TO_HOST(x)
Definition: misc.h:180
#define BE16_TO_HOST(x)
Definition: misc.h:173
#define BE64_TO_HOST(x)
Definition: misc.h:189

Referenced by FileLoader_ELF::LoadIntoComponent().

◆ N_ELF_MACHINE_TYPES

#define N_ELF_MACHINE_TYPES   89

Definition at line 45 of file FileLoader_ELF.cc.

Referenced by FileLoader_ELF::LoadIntoComponent().


Generated on Sun Sep 30 2018 16:05:18 for GXemul by doxygen 1.8.13