haskus-system-0.7.0.0: Haskus system programming framework

Safe HaskellNone
LanguageHaskell2010

Haskus.Format.Elf.Header

Description

ELF header

Synopsis

Documentation

data Header Source #

ELF Header We use 64 bits fields for both 32 and 64 bit formats. These are truncated or zero-extended in the 32 bits case.

Constructors

Header 

Fields

Instances

data Type Source #

ELF file type

Constructors

TypeNone

No file type

TypeRelocatable

Relocatable file

TypeExecutable

Executable file

TypeSharedObject

Shared object file

TypeCoreFile

Core file

Instances

Enum Type Source # 

Methods

succ :: Type -> Type #

pred :: Type -> Type #

toEnum :: Int -> Type #

fromEnum :: Type -> Int #

enumFrom :: Type -> [Type] #

enumFromThen :: Type -> Type -> [Type] #

enumFromTo :: Type -> Type -> [Type] #

enumFromThenTo :: Type -> Type -> Type -> [Type] #

Eq Type Source # 

Methods

(==) :: Type -> Type -> Bool #

(/=) :: Type -> Type -> Bool #

Show Type Source # 

Methods

showsPrec :: Int -> Type -> ShowS #

show :: Type -> String #

showList :: [Type] -> ShowS #

data Arch Source #

ELF architecture

Constructors

ArchNone

No machine

ArchM32

AT&T WE 32100

ArchSPARC

SUN SPARC

Arch386

Intel 80386

Arch68K

Motorola m68k family

Arch88K

Motorola m88k family

Arch860

Intel 80860

ArchMIPS

MIPS R3000 big-endian

ArchS370

IBM System/370

ArchMIPS_RS3_LE

MIPS R3000 little-endian

ArchPARISC

HPPA

ArchVPP500

Fujitsu VPP500

ArchSPARC32PLUS

Sun's "v8plus"

Arch960

Intel 80960

ArchPPC

PowerPC

ArchPPC64

PowerPC 64-bit

ArchS390

IBM S390

ArchV800

NEC V800 series

ArchFR20

Fujitsu FR20

ArchRH32

TRW RH-32

ArchRCE

Motorola RCE

ArchARM

ARM

ArchFAKE_ALPHA

Digital Alpha

ArchSH

Hitachi SH

ArchSPARCV9

SPARC v9 64-bit

ArchTRICORE

Siemens Tricore

ArchARC

Argonaut RISC Core

ArchH8_300

Hitachi H8/300

ArchH8_300H

Hitachi H8/300H

ArchH8S

Hitachi H8S

ArchH8_500

Hitachi H8/500

ArchIA_64

Intel Merced

ArchMIPS_X

Stanford MIPS-X

ArchCOLDFIRE

Motorola Coldfire

Arch68HC12

Motorola M68HC12

ArchMMA

Fujitsu MMA Multimedia Accelerator

ArchPCP

Siemens PCP

ArchNCPU

Sony nCPU embeeded RISC

ArchNDR1

Denso NDR1 microprocessor

ArchSTARCORE

Motorola Start*Core processor

ArchME16

Toyota ME16 processor

ArchST100

STMicroelectronic ST100 processor

ArchTINYJ

Advanced Logic Corp. Tinyj emb.fam

ArchX86_64

AMD x86-64 architecture

ArchPDSP

Sony DSP Processor

ArchFX66

Siemens FX66 microcontroller

ArchST9PLUS

STMicroelectronics ST9+ 8/16 mc

ArchST7

STmicroelectronics ST7 8 bit mc

Arch68HC16

Motorola MC68HC16 microcontroller

Arch68HC11

Motorola MC68HC11 microcontroller

Arch68HC08

Motorola MC68HC08 microcontroller

Arch68HC05

Motorola MC68HC05 microcontroller

ArchSVX

Silicon Graphics SVx

ArchST19

STMicroelectronics ST19 8 bit mc

ArchVAX

Digital VAX

ArchCRIS

Axis Communications 32-bit embedded processor

ArchJAVELIN

Infineon Technologies 32-bit embedded processor

ArchFIREPATH

Element 14 64-bit DSP Processor

ArchZSP

LSI Logic 16-bit DSP Processor

ArchMMIX

Donald Knuth's educational 64-bit processor

ArchHUANY

Harvard University machine-independent object files

ArchPRISM

SiTera Prism

ArchAVR

Atmel AVR 8-bit microcontroller

ArchFR30

Fujitsu FR30

ArchD10V

Mitsubishi D10V

ArchD30V

Mitsubishi D30V

ArchV850

NEC v850

ArchM32R

Mitsubishi M32R

ArchMN10300

Matsushita MN10300

ArchMN10200

Matsushita MN10200

ArchPJ

picoJava

ArchOPENRISC

OpenRISC 32-bit embedded processor

ArchARC_A5

ARC Cores Tangent-A5

ArchXTENSA

Tensilica Xtensa Architecture

ArchALTERA_NIOS2

Altera Nios II

ArchAARCH64

ARM AARCH64

ArchTILEPRO

Tilera TILEPro

ArchMICROBLAZE

Xilinx MicroBlaze

ArchTILEGX

Tilera TILE-Gx

ArchCustom Word16 

Instances

Enum Arch Source # 

Methods

succ :: Arch -> Arch #

pred :: Arch -> Arch #

toEnum :: Int -> Arch #

fromEnum :: Arch -> Int #

enumFrom :: Arch -> [Arch] #

enumFromThen :: Arch -> Arch -> [Arch] #

enumFromTo :: Arch -> Arch -> [Arch] #

enumFromThenTo :: Arch -> Arch -> Arch -> [Arch] #

Eq Arch Source # 

Methods

(==) :: Arch -> Arch -> Bool #

(/=) :: Arch -> Arch -> Bool #

Show Arch Source # 

Methods

showsPrec :: Int -> Arch -> ShowS #

show :: Arch -> String #

showList :: [Arch] -> ShowS #

elfCurrentVersion :: Word8 Source #

Current version (still 1...)

getHeader :: PreHeader -> Get Header Source #

Getter for the header

putHeader :: PreHeader -> Header -> Put Source #

Putter for the header