X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FLibraries%2Fld-acess.so_src%2Fexport.c;h=586078a01aec283f2cfd8220dec267fd3b136e46;hb=f194730e75d6d3681e5f99a4efed1616fd1ea738;hp=d69c6d24ff6e6b537a721115dacc3e0757cc1e7d;hpb=3d6a345b39afa454f0f33fc8d48b96229971e6ed;p=tpg%2Facess2.git diff --git a/Usermode/Libraries/ld-acess.so_src/export.c b/Usermode/Libraries/ld-acess.so_src/export.c index d69c6d24..586078a0 100644 --- a/Usermode/Libraries/ld-acess.so_src/export.c +++ b/Usermode/Libraries/ld-acess.so_src/export.c @@ -4,66 +4,51 @@ #include "common.h" #include +extern uint64_t __udivdi3(uint64_t Num, uint64_t Den); +extern uint64_t __umoddi3(uint64_t Num, uint64_t Den); +extern int32_t __divsi3(int32_t Num, int32_t Den); +extern int32_t __modsi3(int32_t Num, int32_t Den); +extern uint32_t __udivsi3(uint32_t Num, uint32_t Den); +extern uint32_t __umodsi3(uint32_t Num, uint32_t Den); + #define _STR(x) #x #define STR(x) _STR(x) #define EXP(sym) {&sym, STR(sym)} +#define SYSCALL0(name,num) EXP(name), +#define SYSCALL1(name,num) EXP(name), +#define SYSCALL2(name,num) EXP(name), +#define SYSCALL3(name,num) EXP(name), +#define SYSCALL4(name,num) EXP(name), +#define SYSCALL5(name,num) EXP(name), +#define SYSCALL6(name,num) EXP(name), + // === CONSTANTS === const struct { void *Value; char *Name; } caLocalExports[] = { EXP(gLoadedLibraries), - EXP(_exit), - EXP(clone), - EXP(kill), - EXP(yield), - EXP(sleep), - EXP(waittid), - EXP(gettid), - EXP(getpid), - EXP(getuid), - EXP(getgid), - - EXP(setuid), - EXP(setgid), - - EXP(SysSetName), - //EXP(SysGetName), - - //EXP(SysSetPri), - - EXP(SysSendMessage), - EXP(SysGetMessage), - - //EXP(SysSpawn), - EXP(execve), - EXP(SysLoadBin), - EXP(SysUnloadBin), - - EXP(_SysSetFaultHandler), + EXP(_errno), - EXP(open), - EXP(reopen), - EXP(close), - EXP(read), - EXP(write), - EXP(seek), - EXP(tell), - EXP(finfo), - EXP(readdir), - EXP(_SysGetACL), - EXP(chdir), - EXP(ioctl), - EXP(_SysMount), - EXP(select), - - EXP(_SysOpenChild), + #define __ASSEMBLER__ + #include "arch/syscalls.s.h" + #undef __ASSEMBLER__ - EXP(_SysGetPhys), - EXP(_SysAllocate), - EXP(_SysDebug) - + #ifdef ARCHDIR_is_armv7 + {0, "__gnu_Unwind_Find_exidx"}, + {0, "__cxa_call_unexpected"}, + {0, "__cxa_type_match"}, + {0, "__cxa_begin_cleanup"}, + #endif +#if 0 + EXP(__umoddi3), + EXP(__udivdi3), + EXP(__divsi3), + EXP(__modsi3), + EXP(__udivsi3), + EXP(__umodsi3) +#endif }; const int ciNumLocalExports = sizeof(caLocalExports)/sizeof(caLocalExports[0]);