exec_ecoff.h Source File
Back to the index.
Go to the documentation of this file.
34 #ifndef _SYS_EXEC_ECOFF_H_
35 #define _SYS_EXEC_ECOFF_H_
83 #define ECOFF_HDR_SIZE (sizeof(struct ecoff_exechdr))
85 #define ECOFF_OMAGIC 0407
86 #define ECOFF_NMAGIC 0410
87 #define ECOFF_ZMAGIC 0413
89 #define ECOFF_ROUND(value, by) \
90 (((value) + (by) - 1) & ~((by) - 1))
92 #define ECOFF_BLOCK_ALIGN(ep, value) \
93 ((ep)->a.magic == ECOFF_ZMAGIC ? ECOFF_ROUND((value), ECOFF_LDPGSZ) : \
96 #define ECOFF_TXTOFF(ep) \
97 ((ep)->a.magic == ECOFF_ZMAGIC ? 0 : \
98 ECOFF_ROUND(ECOFF_HDR_SIZE + (ep)->f.f_nscns * \
99 sizeof(struct ecoff_scnhdr), ECOFF_SEGMENT_ALIGNMENT(ep)))
101 #define ECOFF_DATOFF(ep) \
102 (ECOFF_BLOCK_ALIGN((ep), ECOFF_TXTOFF(ep) + (ep)->a.tsize))
104 #define ECOFF_SEGMENT_ALIGN(ep, value) \
105 (ECOFF_ROUND((value), ((ep)->a.magic == ECOFF_ZMAGIC ? ECOFF_LDPGSZ : \
106 ECOFF_SEGMENT_ALIGNMENT(ep))))
109 int exec_ecoff_makecmds
__P((
struct proc *,
struct exec_package *));
110 int exec_ecoff_setup_stack
__P((
struct proc *,
struct exec_package *));
111 int cpu_exec_ecoff_probe
__P((
struct proc *,
struct exec_package *));
112 void cpu_exec_ecoff_setregs
__P((
struct proc *,
struct exec_package *,
115 int exec_ecoff_prep_omagic
__P((
struct proc *,
struct exec_package *,
117 int exec_ecoff_prep_nmagic
__P((
struct proc *,
struct exec_package *,
119 int exec_ecoff_prep_zmagic
__P((
struct proc *,
struct exec_package *,
Generated on Tue Mar 24 2020 14:04:48 for GXemul by
1.8.17