require '_h2ph_pre.ph';

unless(defined(&_LINUX_ELF_H)) {
    eval 'sub _LINUX_ELF_H () {1;}' unless defined(&_LINUX_ELF_H);
    require 'linux/types.ph';
    require 'asm/elf.ph';
    eval 'sub PT_NULL () {0;}' unless defined(&PT_NULL);
    eval 'sub PT_LOAD () {1;}' unless defined(&PT_LOAD);
    eval 'sub PT_DYNAMIC () {2;}' unless defined(&PT_DYNAMIC);
    eval 'sub PT_INTERP () {3;}' unless defined(&PT_INTERP);
    eval 'sub PT_NOTE () {4;}' unless defined(&PT_NOTE);
    eval 'sub PT_SHLIB () {5;}' unless defined(&PT_SHLIB);
    eval 'sub PT_PHDR () {6;}' unless defined(&PT_PHDR);
    eval 'sub PT_LOPROC () {0x70000000;}' unless defined(&PT_LOPROC);
    eval 'sub PT_HIPROC () {0x7fffffff;}' unless defined(&PT_HIPROC);
    eval 'sub PT_MIPS_REGINFO () {0x70000000;}' unless defined(&PT_MIPS_REGINFO);
    eval 'sub EF_MIPS_NOREORDER () {0x1;}' unless defined(&EF_MIPS_NOREORDER);
    eval 'sub EF_MIPS_PIC () {0x2;}' unless defined(&EF_MIPS_PIC);
    eval 'sub EF_MIPS_CPIC () {0x4;}' unless defined(&EF_MIPS_CPIC);
    eval 'sub EF_MIPS_ARCH () {0xf0000000;}' unless defined(&EF_MIPS_ARCH);
    eval 'sub ET_NONE () {0;}' unless defined(&ET_NONE);
    eval 'sub ET_REL () {1;}' unless defined(&ET_REL);
    eval 'sub ET_EXEC () {2;}' unless defined(&ET_EXEC);
    eval 'sub ET_DYN () {3;}' unless defined(&ET_DYN);
    eval 'sub ET_CORE () {4;}' unless defined(&ET_CORE);
    eval 'sub ET_LOPROC () {0xff00;}' unless defined(&ET_LOPROC);
    eval 'sub ET_HIPROC () {0xffff;}' unless defined(&ET_HIPROC);
    eval 'sub EM_NONE () {0;}' unless defined(&EM_NONE);
    eval 'sub EM_M32 () {1;}' unless defined(&EM_M32);
    eval 'sub EM_SPARC () {2;}' unless defined(&EM_SPARC);
    eval 'sub EM_386 () {3;}' unless defined(&EM_386);
    eval 'sub EM_68K () {4;}' unless defined(&EM_68K);
    eval 'sub EM_88K () {5;}' unless defined(&EM_88K);
    eval 'sub EM_486 () {6;}' unless defined(&EM_486);
    eval 'sub EM_860 () {7;}' unless defined(&EM_860);
    eval 'sub EM_MIPS () {8;}' unless defined(&EM_MIPS);
    eval 'sub EM_MIPS_RS4_BE () {10;}' unless defined(&EM_MIPS_RS4_BE);
    eval 'sub EM_PARISC () {15;}' unless defined(&EM_PARISC);
    eval 'sub EM_SPARC32PLUS () {18;}' unless defined(&EM_SPARC32PLUS);
    eval 'sub EM_PPC () {20;}' unless defined(&EM_PPC);
    eval 'sub EM_PPC64 () {21;}' unless defined(&EM_PPC64);
    eval 'sub EM_SH () {42;}' unless defined(&EM_SH);
    eval 'sub EM_SPARCV9 () {43;}' unless defined(&EM_SPARCV9);
    eval 'sub EM_IA_64 () {50;}' unless defined(&EM_IA_64);
    eval 'sub EM_X8664 () {62;}' unless defined(&EM_X8664);
    eval 'sub EM_S390 () {22;}' unless defined(&EM_S390);
    eval 'sub EM_CRIS () {76;}' unless defined(&EM_CRIS);
    eval 'sub EM_ALPHA () {0x9026;}' unless defined(&EM_ALPHA);
    eval 'sub EM_S390_OLD () {0xa390;}' unless defined(&EM_S390_OLD);
    eval 'sub DT_NULL () {0;}' unless defined(&DT_NULL);
    eval 'sub DT_NEEDED () {1;}' unless defined(&DT_NEEDED);
    eval 'sub DT_PLTRELSZ () {2;}' unless defined(&DT_PLTRELSZ);
    eval 'sub DT_PLTGOT () {3;}' unless defined(&DT_PLTGOT);
    eval 'sub DT_HASH () {4;}' unless defined(&DT_HASH);
    eval 'sub DT_STRTAB () {5;}' unless defined(&DT_STRTAB);
    eval 'sub DT_SYMTAB () {6;}' unless defined(&DT_SYMTAB);
    eval 'sub DT_RELA () {7;}' unless defined(&DT_RELA);
    eval 'sub DT_RELASZ () {8;}' unless defined(&DT_RELASZ);
    eval 'sub DT_RELAENT () {9;}' unless defined(&DT_RELAENT);
    eval 'sub DT_STRSZ () {10;}' unless defined(&DT_STRSZ);
    eval 'sub DT_SYMENT () {11;}' unless defined(&DT_SYMENT);
    eval 'sub DT_INIT () {12;}' unless defined(&DT_INIT);
    eval 'sub DT_FINI () {13;}' unless defined(&DT_FINI);
    eval 'sub DT_SONAME () {14;}' unless defined(&DT_SONAME);
    eval 'sub DT_RPATH () {15;}' unless defined(&DT_RPATH);
    eval 'sub DT_SYMBOLIC () {16;}' unless defined(&DT_SYMBOLIC);
    eval 'sub DT_REL () {17;}' unless defined(&DT_REL);
    eval 'sub DT_RELSZ () {18;}' unless defined(&DT_RELSZ);
    eval 'sub DT_RELENT () {19;}' unless defined(&DT_RELENT);
    eval 'sub DT_PLTREL () {20;}' unless defined(&DT_PLTREL);
    eval 'sub DT_DEBUG () {21;}' unless defined(&DT_DEBUG);
    eval 'sub DT_TEXTREL () {22;}' unless defined(&DT_TEXTREL);
    eval 'sub DT_JMPREL () {23;}' unless defined(&DT_JMPREL);
    eval 'sub DT_LOPROC () {0x70000000;}' unless defined(&DT_LOPROC);
    eval 'sub DT_HIPROC () {0x7fffffff;}' unless defined(&DT_HIPROC);
    eval 'sub DT_MIPS_RLD_VERSION () {0x70000001;}' unless defined(&DT_MIPS_RLD_VERSION);
    eval 'sub DT_MIPS_TIME_STAMP () {0x70000002;}' unless defined(&DT_MIPS_TIME_STAMP);
    eval 'sub DT_MIPS_ICHECKSUM () {0x70000003;}' unless defined(&DT_MIPS_ICHECKSUM);
    eval 'sub DT_MIPS_IVERSION () {0x70000004;}' unless defined(&DT_MIPS_IVERSION);
    eval 'sub DT_MIPS_FLAGS () {0x70000005;}' unless defined(&DT_MIPS_FLAGS);
    eval 'sub RHF_NONE () {0;}' unless defined(&RHF_NONE);
    eval 'sub RHF_HARDWAY () {1;}' unless defined(&RHF_HARDWAY);
    eval 'sub RHF_NOTPOT () {2;}' unless defined(&RHF_NOTPOT);
    eval 'sub DT_MIPS_BASE_ADDRESS () {0x70000006;}' unless defined(&DT_MIPS_BASE_ADDRESS);
    eval 'sub DT_MIPS_CONFLICT () {0x70000008;}' unless defined(&DT_MIPS_CONFLICT);
    eval 'sub DT_MIPS_LIBLIST () {0x70000009;}' unless defined(&DT_MIPS_LIBLIST);
    eval 'sub DT_MIPS_LOCAL_GOTNO () {0x7000000a;}' unless defined(&DT_MIPS_LOCAL_GOTNO);
    eval 'sub DT_MIPS_CONFLICTNO () {0x7000000b;}' unless defined(&DT_MIPS_CONFLICTNO);
    eval 'sub DT_MIPS_LIBLISTNO () {0x70000010;}' unless defined(&DT_MIPS_LIBLISTNO);
    eval 'sub DT_MIPS_SYMTABNO () {0x70000011;}' unless defined(&DT_MIPS_SYMTABNO);
    eval 'sub DT_MIPS_UNREFEXTNO () {0x70000012;}' unless defined(&DT_MIPS_UNREFEXTNO);
    eval 'sub DT_MIPS_GOTSYM () {0x70000013;}' unless defined(&DT_MIPS_GOTSYM);
    eval 'sub DT_MIPS_HIPAGENO () {0x70000014;}' unless defined(&DT_MIPS_HIPAGENO);
    eval 'sub DT_MIPS_RLD_MAP () {0x70000016;}' unless defined(&DT_MIPS_RLD_MAP);
    eval 'sub STB_LOCAL () {0;}' unless defined(&STB_LOCAL);
    eval 'sub STB_GLOBAL () {1;}' unless defined(&STB_GLOBAL);
    eval 'sub STB_WEAK () {2;}' unless defined(&STB_WEAK);
    eval 'sub STT_NOTYPE () {0;}' unless defined(&STT_NOTYPE);
    eval 'sub STT_OBJECT () {1;}' unless defined(&STT_OBJECT);
    eval 'sub STT_FUNC () {2;}' unless defined(&STT_FUNC);
    eval 'sub STT_SECTION () {3;}' unless defined(&STT_SECTION);
    eval 'sub STT_FILE () {4;}' unless defined(&STT_FILE);
    eval 'sub ELF32_ST_BIND {
        local($x) = @_;
	    eval q((($x) >> 4));
    }' unless defined(&ELF32_ST_BIND);
    eval 'sub ELF32_ST_TYPE {
        local($x) = @_;
	    eval q((( $x) & 0xf));
    }' unless defined(&ELF32_ST_TYPE);
    eval 'sub AT_NULL () {0;}' unless defined(&AT_NULL);
    eval 'sub AT_IGNORE () {1;}' unless defined(&AT_IGNORE);
    eval 'sub AT_EXECFD () {2;}' unless defined(&AT_EXECFD);
    eval 'sub AT_PHDR () {3;}' unless defined(&AT_PHDR);
    eval 'sub AT_PHENT () {4;}' unless defined(&AT_PHENT);
    eval 'sub AT_PHNUM () {5;}' unless defined(&AT_PHNUM);
    eval 'sub AT_PAGESZ () {6;}' unless defined(&AT_PAGESZ);
    eval 'sub AT_BASE () {7;}' unless defined(&AT_BASE);
    eval 'sub AT_FLAGS () {8;}' unless defined(&AT_FLAGS);
    eval 'sub AT_ENTRY () {9;}' unless defined(&AT_ENTRY);
    eval 'sub AT_NOTELF () {10;}' unless defined(&AT_NOTELF);
    eval 'sub AT_UID () {11;}' unless defined(&AT_UID);
    eval 'sub AT_EUID () {12;}' unless defined(&AT_EUID);
    eval 'sub AT_GID () {13;}' unless defined(&AT_GID);
    eval 'sub AT_EGID () {14;}' unless defined(&AT_EGID);
    eval 'sub AT_PLATFORM () {15;}' unless defined(&AT_PLATFORM);
    eval 'sub AT_HWCAP () {16;}' unless defined(&AT_HWCAP);
    eval 'sub AT_CLKTCK () {17;}' unless defined(&AT_CLKTCK);
    eval 'sub ELF32_R_SYM {
        local($x) = @_;
	    eval q((($x) >> 8));
    }' unless defined(&ELF32_R_SYM);
    eval 'sub ELF32_R_TYPE {
        local($x) = @_;
	    eval q((($x) & 0xff));
    }' unless defined(&ELF32_R_TYPE);
    eval 'sub R_386_NONE () {0;}' unless defined(&R_386_NONE);
    eval 'sub R_386_32 () {1;}' unless defined(&R_386_32);
    eval 'sub R_386_PC32 () {2;}' unless defined(&R_386_PC32);
    eval 'sub R_386_GOT32 () {3;}' unless defined(&R_386_GOT32);
    eval 'sub R_386_PLT32 () {4;}' unless defined(&R_386_PLT32);
    eval 'sub R_386_COPY () {5;}' unless defined(&R_386_COPY);
    eval 'sub R_386_GLOB_DAT () {6;}' unless defined(&R_386_GLOB_DAT);
    eval 'sub R_386_JMP_SLOT () {7;}' unless defined(&R_386_JMP_SLOT);
    eval 'sub R_386_RELATIVE () {8;}' unless defined(&R_386_RELATIVE);
    eval 'sub R_386_GOTOFF () {9;}' unless defined(&R_386_GOTOFF);
    eval 'sub R_386_GOTPC () {10;}' unless defined(&R_386_GOTPC);
    eval 'sub R_386_NUM () {11;}' unless defined(&R_386_NUM);
    eval 'sub R_MIPS_NONE () {0;}' unless defined(&R_MIPS_NONE);
    eval 'sub R_MIPS_16 () {1;}' unless defined(&R_MIPS_16);
    eval 'sub R_MIPS_32 () {2;}' unless defined(&R_MIPS_32);
    eval 'sub R_MIPS_REL32 () {3;}' unless defined(&R_MIPS_REL32);
    eval 'sub R_MIPS_26 () {4;}' unless defined(&R_MIPS_26);
    eval 'sub R_MIPS_HI16 () {5;}' unless defined(&R_MIPS_HI16);
    eval 'sub R_MIPS_LO16 () {6;}' unless defined(&R_MIPS_LO16);
    eval 'sub R_MIPS_GPREL16 () {7;}' unless defined(&R_MIPS_GPREL16);
    eval 'sub R_MIPS_LITERAL () {8;}' unless defined(&R_MIPS_LITERAL);
    eval 'sub R_MIPS_GOT16 () {9;}' unless defined(&R_MIPS_GOT16);
    eval 'sub R_MIPS_PC16 () {10;}' unless defined(&R_MIPS_PC16);
    eval 'sub R_MIPS_CALL16 () {11;}' unless defined(&R_MIPS_CALL16);
    eval 'sub R_MIPS_GPREL32 () {12;}' unless defined(&R_MIPS_GPREL32);
    eval 'sub R_MIPS_UNUSED1 () {13;}' unless defined(&R_MIPS_UNUSED1);
    eval 'sub R_MIPS_UNUSED2 () {14;}' unless defined(&R_MIPS_UNUSED2);
    eval 'sub R_MIPS_UNUSED3 () {15;}' unless defined(&R_MIPS_UNUSED3);
    eval 'sub R_MIPS_SHIFT5 () {16;}' unless defined(&R_MIPS_SHIFT5);
    eval 'sub R_MIPS_SHIFT6 () {17;}' unless defined(&R_MIPS_SHIFT6);
    eval 'sub R_MIPS_64 () {18;}' unless defined(&R_MIPS_64);
    eval 'sub R_MIPS_GOT_DISP () {19;}' unless defined(&R_MIPS_GOT_DISP);
    eval 'sub R_MIPS_GOT_PAGE () {20;}' unless defined(&R_MIPS_GOT_PAGE);
    eval 'sub R_MIPS_GOT_OFST () {21;}' unless defined(&R_MIPS_GOT_OFST);
    eval 'sub R_MIPS_GOTHI16 () {22;}' unless defined(&R_MIPS_GOTHI16);
    eval 'sub R_MIPS_GOTLO16 () {23;}' unless defined(&R_MIPS_GOTLO16);
    eval 'sub R_MIPS_SUB () {24;}' unless defined(&R_MIPS_SUB);
    eval 'sub R_MIPS_INSERT_A () {25;}' unless defined(&R_MIPS_INSERT_A);
    eval 'sub R_MIPS_INSERT_B () {26;}' unless defined(&R_MIPS_INSERT_B);
    eval 'sub R_MIPS_DELETE () {27;}' unless defined(&R_MIPS_DELETE);
    eval 'sub R_MIPS_HIGHER () {28;}' unless defined(&R_MIPS_HIGHER);
    eval 'sub R_MIPS_HIGHEST () {29;}' unless defined(&R_MIPS_HIGHEST);
    eval 'sub R_MIPS_CALLHI16 () {30;}' unless defined(&R_MIPS_CALLHI16);
    eval 'sub R_MIPS_CALLLO16 () {31;}' unless defined(&R_MIPS_CALLLO16);
    eval 'sub R_MIPS_LOVENDOR () {100;}' unless defined(&R_MIPS_LOVENDOR);
    eval 'sub R_MIPS_HIVENDOR () {127;}' unless defined(&R_MIPS_HIVENDOR);
    eval 'sub R_SPARC_NONE () {0;}' unless defined(&R_SPARC_NONE);
    eval 'sub R_SPARC_8 () {1;}' unless defined(&R_SPARC_8);
    eval 'sub R_SPARC_16 () {2;}' unless defined(&R_SPARC_16);
    eval 'sub R_SPARC_32 () {3;}' unless defined(&R_SPARC_32);
    eval 'sub R_SPARC_DISP8 () {4;}' unless defined(&R_SPARC_DISP8);
    eval 'sub R_SPARC_DISP16 () {5;}' unless defined(&R_SPARC_DISP16);
    eval 'sub R_SPARC_DISP32 () {6;}' unless defined(&R_SPARC_DISP32);
    eval 'sub R_SPARC_WDISP30 () {7;}' unless defined(&R_SPARC_WDISP30);
    eval 'sub R_SPARC_WDISP22 () {8;}' unless defined(&R_SPARC_WDISP22);
    eval 'sub R_SPARC_HI22 () {9;}' unless defined(&R_SPARC_HI22);
    eval 'sub R_SPARC_22 () {10;}' unless defined(&R_SPARC_22);
    eval 'sub R_SPARC_13 () {11;}' unless defined(&R_SPARC_13);
    eval 'sub R_SPARC_LO10 () {12;}' unless defined(&R_SPARC_LO10);
    eval 'sub R_SPARC_GOT10 () {13;}' unless defined(&R_SPARC_GOT10);
    eval 'sub R_SPARC_GOT13 () {14;}' unless defined(&R_SPARC_GOT13);
    eval 'sub R_SPARC_GOT22 () {15;}' unless defined(&R_SPARC_GOT22);
    eval 'sub R_SPARC_PC10 () {16;}' unless defined(&R_SPARC_PC10);
    eval 'sub R_SPARC_PC22 () {17;}' unless defined(&R_SPARC_PC22);
    eval 'sub R_SPARC_WPLT30 () {18;}' unless defined(&R_SPARC_WPLT30);
    eval 'sub R_SPARC_COPY () {19;}' unless defined(&R_SPARC_COPY);
    eval 'sub R_SPARC_GLOB_DAT () {20;}' unless defined(&R_SPARC_GLOB_DAT);
    eval 'sub R_SPARC_JMP_SLOT () {21;}' unless defined(&R_SPARC_JMP_SLOT);
    eval 'sub R_SPARC_RELATIVE () {22;}' unless defined(&R_SPARC_RELATIVE);
    eval 'sub R_SPARC_UA32 () {23;}' unless defined(&R_SPARC_UA32);
    eval 'sub R_SPARC_PLT32 () {24;}' unless defined(&R_SPARC_PLT32);
    eval 'sub R_SPARC_HIPLT22 () {25;}' unless defined(&R_SPARC_HIPLT22);
    eval 'sub R_SPARC_LOPLT10 () {26;}' unless defined(&R_SPARC_LOPLT10);
    eval 'sub R_SPARC_PCPLT32 () {27;}' unless defined(&R_SPARC_PCPLT32);
    eval 'sub R_SPARC_PCPLT22 () {28;}' unless defined(&R_SPARC_PCPLT22);
    eval 'sub R_SPARC_PCPLT10 () {29;}' unless defined(&R_SPARC_PCPLT10);
    eval 'sub R_SPARC_10 () {30;}' unless defined(&R_SPARC_10);
    eval 'sub R_SPARC_11 () {31;}' unless defined(&R_SPARC_11);
    eval 'sub R_SPARC_WDISP16 () {40;}' unless defined(&R_SPARC_WDISP16);
    eval 'sub R_SPARC_WDISP19 () {41;}' unless defined(&R_SPARC_WDISP19);
    eval 'sub R_SPARC_7 () {43;}' unless defined(&R_SPARC_7);
    eval 'sub R_SPARC_5 () {44;}' unless defined(&R_SPARC_5);
    eval 'sub R_SPARC_6 () {45;}' unless defined(&R_SPARC_6);
    eval 'sub HWCAP_SPARC_FLUSH () {1;}' unless defined(&HWCAP_SPARC_FLUSH);
    eval 'sub HWCAP_SPARC_STBAR () {2;}' unless defined(&HWCAP_SPARC_STBAR);
    eval 'sub HWCAP_SPARC_SWAP () {4;}' unless defined(&HWCAP_SPARC_SWAP);
    eval 'sub HWCAP_SPARC_MULDIV () {8;}' unless defined(&HWCAP_SPARC_MULDIV);
    eval 'sub HWCAP_SPARC_V9 () {16;}' unless defined(&HWCAP_SPARC_V9);
    eval 'sub HWCAP_SPARC_ULTRA3 () {32;}' unless defined(&HWCAP_SPARC_ULTRA3);
    eval 'sub R_68K_NONE () {0;}' unless defined(&R_68K_NONE);
    eval 'sub R_68K_32 () {1;}' unless defined(&R_68K_32);
    eval 'sub R_68K_16 () {2;}' unless defined(&R_68K_16);
    eval 'sub R_68K_8 () {3;}' unless defined(&R_68K_8);
    eval 'sub R_68K_PC32 () {4;}' unless defined(&R_68K_PC32);
    eval 'sub R_68K_PC16 () {5;}' unless defined(&R_68K_PC16);
    eval 'sub R_68K_PC8 () {6;}' unless defined(&R_68K_PC8);
    eval 'sub R_68K_GOT32 () {7;}' unless defined(&R_68K_GOT32);
    eval 'sub R_68K_GOT16 () {8;}' unless defined(&R_68K_GOT16);
    eval 'sub R_68K_GOT8 () {9;}' unless defined(&R_68K_GOT8);
    eval 'sub R_68K_GOT32O () {10;}' unless defined(&R_68K_GOT32O);
    eval 'sub R_68K_GOT16O () {11;}' unless defined(&R_68K_GOT16O);
    eval 'sub R_68K_GOT8O () {12;}' unless defined(&R_68K_GOT8O);
    eval 'sub R_68K_PLT32 () {13;}' unless defined(&R_68K_PLT32);
    eval 'sub R_68K_PLT16 () {14;}' unless defined(&R_68K_PLT16);
    eval 'sub R_68K_PLT8 () {15;}' unless defined(&R_68K_PLT8);
    eval 'sub R_68K_PLT32O () {16;}' unless defined(&R_68K_PLT32O);
    eval 'sub R_68K_PLT16O () {17;}' unless defined(&R_68K_PLT16O);
    eval 'sub R_68K_PLT8O () {18;}' unless defined(&R_68K_PLT8O);
    eval 'sub R_68K_COPY () {19;}' unless defined(&R_68K_COPY);
    eval 'sub R_68K_GLOB_DAT () {20;}' unless defined(&R_68K_GLOB_DAT);
    eval 'sub R_68K_JMP_SLOT () {21;}' unless defined(&R_68K_JMP_SLOT);
    eval 'sub R_68K_RELATIVE () {22;}' unless defined(&R_68K_RELATIVE);
    eval 'sub R_ALPHA_NONE () {0;}' unless defined(&R_ALPHA_NONE);
    eval 'sub R_ALPHA_REFLONG () {1;}' unless defined(&R_ALPHA_REFLONG);
    eval 'sub R_ALPHA_REFQUAD () {2;}' unless defined(&R_ALPHA_REFQUAD);
    eval 'sub R_ALPHA_GPREL32 () {3;}' unless defined(&R_ALPHA_GPREL32);
    eval 'sub R_ALPHA_LITERAL () {4;}' unless defined(&R_ALPHA_LITERAL);
    eval 'sub R_ALPHA_LITUSE () {5;}' unless defined(&R_ALPHA_LITUSE);
    eval 'sub R_ALPHA_GPDISP () {6;}' unless defined(&R_ALPHA_GPDISP);
    eval 'sub R_ALPHA_BRADDR () {7;}' unless defined(&R_ALPHA_BRADDR);
    eval 'sub R_ALPHA_HINT () {8;}' unless defined(&R_ALPHA_HINT);
    eval 'sub R_ALPHA_SREL16 () {9;}' unless defined(&R_ALPHA_SREL16);
    eval 'sub R_ALPHA_SREL32 () {10;}' unless defined(&R_ALPHA_SREL32);
    eval 'sub R_ALPHA_SREL64 () {11;}' unless defined(&R_ALPHA_SREL64);
    eval 'sub R_ALPHA_OP_PUSH () {12;}' unless defined(&R_ALPHA_OP_PUSH);
    eval 'sub R_ALPHA_OP_STORE () {13;}' unless defined(&R_ALPHA_OP_STORE);
    eval 'sub R_ALPHA_OP_PSUB () {14;}' unless defined(&R_ALPHA_OP_PSUB);
    eval 'sub R_ALPHA_OP_PRSHIFT () {15;}' unless defined(&R_ALPHA_OP_PRSHIFT);
    eval 'sub R_ALPHA_GPVALUE () {16;}' unless defined(&R_ALPHA_GPVALUE);
    eval 'sub R_ALPHA_GPRELHIGH () {17;}' unless defined(&R_ALPHA_GPRELHIGH);
    eval 'sub R_ALPHA_GPRELLOW () {18;}' unless defined(&R_ALPHA_GPRELLOW);
    eval 'sub R_ALPHA_IMMED_GP_16 () {19;}' unless defined(&R_ALPHA_IMMED_GP_16);
    eval 'sub R_ALPHA_IMMED_GP_HI32 () {20;}' unless defined(&R_ALPHA_IMMED_GP_HI32);
    eval 'sub R_ALPHA_IMMED_SCN_HI32 () {21;}' unless defined(&R_ALPHA_IMMED_SCN_HI32);
    eval 'sub R_ALPHA_IMMED_BR_HI32 () {22;}' unless defined(&R_ALPHA_IMMED_BR_HI32);
    eval 'sub R_ALPHA_IMMED_LO32 () {23;}' unless defined(&R_ALPHA_IMMED_LO32);
    eval 'sub R_ALPHA_COPY () {24;}' unless defined(&R_ALPHA_COPY);
    eval 'sub R_ALPHA_GLOB_DAT () {25;}' unless defined(&R_ALPHA_GLOB_DAT);
    eval 'sub R_ALPHA_JMP_SLOT () {26;}' unless defined(&R_ALPHA_JMP_SLOT);
    eval 'sub R_ALPHA_RELATIVE () {27;}' unless defined(&R_ALPHA_RELATIVE);
    eval 'sub EF_ALPHA_32BIT () {1;}' unless defined(&EF_ALPHA_32BIT);
    eval 'sub EI_NIDENT () {16;}' unless defined(&EI_NIDENT);
    eval 'sub PF_R () {0x4;}' unless defined(&PF_R);
    eval 'sub PF_W () {0x2;}' unless defined(&PF_W);
    eval 'sub PF_X () {0x1;}' unless defined(&PF_X);
    eval 'sub SHT_NULL () {0;}' unless defined(&SHT_NULL);
    eval 'sub SHT_PROGBITS () {1;}' unless defined(&SHT_PROGBITS);
    eval 'sub SHT_SYMTAB () {2;}' unless defined(&SHT_SYMTAB);
    eval 'sub SHT_STRTAB () {3;}' unless defined(&SHT_STRTAB);
    eval 'sub SHT_RELA () {4;}' unless defined(&SHT_RELA);
    eval 'sub SHT_HASH () {5;}' unless defined(&SHT_HASH);
    eval 'sub SHT_DYNAMIC () {6;}' unless defined(&SHT_DYNAMIC);
    eval 'sub SHT_NOTE () {7;}' unless defined(&SHT_NOTE);
    eval 'sub SHT_NOBITS () {8;}' unless defined(&SHT_NOBITS);
    eval 'sub SHT_REL () {9;}' unless defined(&SHT_REL);
    eval 'sub SHT_SHLIB () {10;}' unless defined(&SHT_SHLIB);
    eval 'sub SHT_DYNSYM () {11;}' unless defined(&SHT_DYNSYM);
    eval 'sub SHT_NUM () {12;}' unless defined(&SHT_NUM);
    eval 'sub SHT_LOPROC () {0x70000000;}' unless defined(&SHT_LOPROC);
    eval 'sub SHT_HIPROC () {0x7fffffff;}' unless defined(&SHT_HIPROC);
    eval 'sub SHT_LOUSER () {0x80000000;}' unless defined(&SHT_LOUSER);
    eval 'sub SHT_HIUSER () {0xffffffff;}' unless defined(&SHT_HIUSER);
    eval 'sub SHT_MIPS_LIST () {0x70000000;}' unless defined(&SHT_MIPS_LIST);
    eval 'sub SHT_MIPS_CONFLICT () {0x70000002;}' unless defined(&SHT_MIPS_CONFLICT);
    eval 'sub SHT_MIPS_GPTAB () {0x70000003;}' unless defined(&SHT_MIPS_GPTAB);
    eval 'sub SHT_MIPS_UCODE () {0x70000004;}' unless defined(&SHT_MIPS_UCODE);
    eval 'sub SHF_WRITE () {0x1;}' unless defined(&SHF_WRITE);
    eval 'sub SHF_ALLOC () {0x2;}' unless defined(&SHF_ALLOC);
    eval 'sub SHF_EXECINSTR () {0x4;}' unless defined(&SHF_EXECINSTR);
    eval 'sub SHF_MASKPROC () {0xf0000000;}' unless defined(&SHF_MASKPROC);
    eval 'sub SHF_MIPS_GPREL () {0x10000000;}' unless defined(&SHF_MIPS_GPREL);
    eval 'sub SHN_UNDEF () {0;}' unless defined(&SHN_UNDEF);
    eval 'sub SHN_LORESERVE () {0xff00;}' unless defined(&SHN_LORESERVE);
    eval 'sub SHN_LOPROC () {0xff00;}' unless defined(&SHN_LOPROC);
    eval 'sub SHN_HIPROC () {0xff1f;}' unless defined(&SHN_HIPROC);
    eval 'sub SHN_ABS () {0xfff1;}' unless defined(&SHN_ABS);
    eval 'sub SHN_COMMON () {0xfff2;}' unless defined(&SHN_COMMON);
    eval 'sub SHN_HIRESERVE () {0xffff;}' unless defined(&SHN_HIRESERVE);
    eval 'sub SHN_MIPS_ACCOMON () {0xff00;}' unless defined(&SHN_MIPS_ACCOMON);
    eval 'sub EI_MAG0 () {0;}' unless defined(&EI_MAG0);
    eval 'sub EI_MAG1 () {1;}' unless defined(&EI_MAG1);
    eval 'sub EI_MAG2 () {2;}' unless defined(&EI_MAG2);
    eval 'sub EI_MAG3 () {3;}' unless defined(&EI_MAG3);
    eval 'sub EI_CLASS () {4;}' unless defined(&EI_CLASS);
    eval 'sub EI_DATA () {5;}' unless defined(&EI_DATA);
    eval 'sub EI_VERSION () {6;}' unless defined(&EI_VERSION);
    eval 'sub EI_PAD () {7;}' unless defined(&EI_PAD);
    eval 'sub ELFMAG0 () {0x7f;}' unless defined(&ELFMAG0);
    eval 'sub ELFMAG1 () {ord(\'E\');}' unless defined(&ELFMAG1);
    eval 'sub ELFMAG2 () {ord(\'L\');}' unless defined(&ELFMAG2);
    eval 'sub ELFMAG3 () {ord(\'F\');}' unless defined(&ELFMAG3);
    eval 'sub ELFMAG () {"\\177ELF";}' unless defined(&ELFMAG);
    eval 'sub SELFMAG () {4;}' unless defined(&SELFMAG);
    eval 'sub ELFCLASSNONE () {0;}' unless defined(&ELFCLASSNONE);
    eval 'sub ELFCLASS32 () {1;}' unless defined(&ELFCLASS32);
    eval 'sub ELFCLASS64 () {2;}' unless defined(&ELFCLASS64);
    eval 'sub ELFCLASSNUM () {3;}' unless defined(&ELFCLASSNUM);
    eval 'sub ELFDATANONE () {0;}' unless defined(&ELFDATANONE);
    eval 'sub ELFDATA2LSB () {1;}' unless defined(&ELFDATA2LSB);
    eval 'sub ELFDATA2MSB () {2;}' unless defined(&ELFDATA2MSB);
    eval 'sub EV_NONE () {0;}' unless defined(&EV_NONE);
    eval 'sub EV_CURRENT () {1;}' unless defined(&EV_CURRENT);
    eval 'sub EV_NUM () {2;}' unless defined(&EV_NUM);
    eval 'sub NT_PRSTATUS () {1;}' unless defined(&NT_PRSTATUS);
    eval 'sub NT_PRFPREG () {2;}' unless defined(&NT_PRFPREG);
    eval 'sub NT_PRPSINFO () {3;}' unless defined(&NT_PRPSINFO);
    eval 'sub NT_TASKSTRUCT () {4;}' unless defined(&NT_TASKSTRUCT);
    eval 'sub NT_PRFPXREG () {20;}' unless defined(&NT_PRFPXREG);
    if((defined(&ELF_CLASS) ? &ELF_CLASS : 0) == (defined(&ELFCLASS32) ? &ELFCLASS32 : 0)) {
	eval 'sub elfhdr () { &elf32_hdr;}' unless defined(&elfhdr);
	eval 'sub elf_phdr () { &elf32_phdr;}' unless defined(&elf_phdr);
	eval 'sub elf_note () { &elf32_note;}' unless defined(&elf_note);
    } else {
	eval 'sub elfhdr () { &elf64_hdr;}' unless defined(&elfhdr);
	eval 'sub elf_phdr () { &elf64_phdr;}' unless defined(&elf_phdr);
	eval 'sub elf_note () { &elf64_note;}' unless defined(&elf_note);
    }
}
1;
