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; \
} \
}

◆ N_ELF_MACHINE_TYPES

#define N_ELF_MACHINE_TYPES   89

Definition at line 45 of file FileLoader_ELF.cc.

LE32_TO_HOST
#define LE32_TO_HOST(x)
Definition: misc.h:180
BE32_TO_HOST
#define BE32_TO_HOST(x)
Definition: misc.h:181
LE64_TO_HOST
#define LE64_TO_HOST(x)
Definition: misc.h:188
cpu::name
char * name
Definition: cpu.h:334
BE64_TO_HOST
#define BE64_TO_HOST(x)
Definition: misc.h:189
BE16_TO_HOST
#define BE16_TO_HOST(x)
Definition: misc.h:173
LE16_TO_HOST
#define LE16_TO_HOST(x)
Definition: misc.h:172
ELFDATA2LSB
#define ELFDATA2LSB
Definition: exec_elf.h:154

Generated on Tue Mar 24 2020 14:04:48 for GXemul by doxygen 1.8.17