Go to the source code of this file.
Defines | |
#define | _LINUX_I386_SYSDEP_H 1 |
#define | SYS_ify(syscall_name) __NR_##syscall_name |
#define | L(name) .L##name |
#define | INLINE_SYSCALL(name, nr, args...) |
#define | INLINE_SYSCALL1(name, nr, args...) |
#define | INLINE_SYSCALL3(name, nr, args...) |
#define | INLINE_SYSCALLTEST(name, nr, args...) |
#define | LOADARGS_0 |
#define | LOADARGS_1 |
#define | LOADARGS_2 LOADARGS_1 |
#define | LOADARGS_3 LOADARGS_1 |
#define | LOADARGS_4 LOADARGS_1 |
#define | LOADARGS_5 LOADARGS_1 |
#define | RESTOREARGS_0 |
#define | RESTOREARGS_1 "bpopl .L__X'%k2, %k2\n\t" |
#define | RESTOREARGS_2 RESTOREARGS_1 |
#define | RESTOREARGS_3 RESTOREARGS_1 |
#define | RESTOREARGS_4 RESTOREARGS_1 |
#define | RESTOREARGS_5 RESTOREARGS_1 |
#define | ASMFMT_0() |
#define | ASMFMT_1(arg1) , "acdSD" (arg1) |
#define | ASMFMT_2(arg1, arg2) , "adCD" (arg1), "c" (arg2) |
#define | ASMFMT_3(arg1, arg2, arg3) , "aCD" (arg1), "c" (arg2), "d" (arg3) |
#define | ASMFMT_4(arg1, arg2, arg3, arg4) , "aD" (arg1), "c" (arg2), "d" (arg3), "S" (arg4) |
#define | ASMFMT_5(arg1, arg2, arg3, arg4, arg5) , "a" (arg1), "c" (arg2), "d" (arg3), "S" (arg4), "D" (arg5) |
Functions | |
asm (".L__X'%ebx = 1\n\t"".L__X'%ecx = 2\n\t"".L__X'%edx = 2\n\t"".L__X'%eax = 3\n\t"".L__X'%esi = 3\n\t"".L__X'%edi = 3\n\t"".L__X'%ebp = 3\n\t"".L__X'%esp = 3\n\t"".macro bpushl name reg\n\t"".if 1 - \\name\n\t"".if 2 - \\name\n\t""pushl %ebx\n\t"".else\n\t""xchgl \\reg, %ebx\n\t"".endif\n\t"".endif\n\t"".endm\n\t"".macro bpopl name reg\n\t"".if 1 - \\name\n\t"".if 2 - \\name\n\t""popl %ebx\n\t"".else\n\t""xchgl \\reg, %ebx\n\t"".endif\n\t"".endif\n\t"".endm\n\t"".macro bmovl name reg\n\t"".if 1 - \\name\n\t"".if 2 - \\name\n\t""movl \\reg, %ebx\n\t"".endif\n\t"".endif\n\t"".endm\n\t") | |
Variables | |
int | errno |
#define _LINUX_I386_SYSDEP_H 1 |
Definition at line 21 of file sysdepum.h.
#define ASMFMT_0 | ( | ) |
Definition at line 336 of file sysdepum.h.
#define ASMFMT_1 | ( | arg1 | ) | , "acdSD" (arg1) |
Definition at line 337 of file sysdepum.h.
#define ASMFMT_2 | ( | arg1, | |||
arg2 | ) | , "adCD" (arg1), "c" (arg2) |
Definition at line 339 of file sysdepum.h.
#define ASMFMT_3 | ( | arg1, | |||
arg2, | |||||
arg3 | ) | , "aCD" (arg1), "c" (arg2), "d" (arg3) |
Definition at line 341 of file sysdepum.h.
#define ASMFMT_4 | ( | arg1, | |||
arg2, | |||||
arg3, | |||||
arg4 | ) | , "aD" (arg1), "c" (arg2), "d" (arg3), "S" (arg4) |
Definition at line 343 of file sysdepum.h.
#define ASMFMT_5 | ( | arg1, | |||
arg2, | |||||
arg3, | |||||
arg4, | |||||
arg5 | ) | , "a" (arg1), "c" (arg2), "d" (arg3), "S" (arg4), "D" (arg5) |
Definition at line 345 of file sysdepum.h.
#define INLINE_SYSCALL | ( | name, | |||
nr, | |||||
args... | ) |
Value:
({ \ unsigned int resultvar; \ asm volatile ( \ LOADARGS_##nr \ "movl %1, %%eax\n\t" \ "int _0x80\n\t" \ RESTOREARGS_##nr \ : "=a" (resultvar) \ : "i" (__NR_##name) ASMFMT_##nr(args) : "memory", "cc"); \ if (resultvar >= 0xfffff001) \ { \ errno= (-resultvar); \ resultvar = 0xffffffff; \ } \ (int) resultvar; })
Definition at line 248 of file sysdepum.h.
Referenced by sys_adjwsl(), sys_ascefc(), sys_asctoid(), sys_assign(), sys_cancel(), sys_cantim(), sys_canwak(), sys_cli(), sys_clrast(), sys_clref(), sys_cmkrnl(), sys_cpu_capabilities(), sys_create_region_32(), sys_crelnm(), sys_crelnt(), sys_crembx(), sys_creprc(), sys_cretva(), sys_crmpsc(), sys_dacefc(), sys_dassgn(), sys_dclast(), sys_dclexh(), sys_dellnm(), sys_delmbx(), sys_deltva(), sys_deq(), sys_device_scan(), sys_dlcefc(), sys_enq(), sys_enqw(), sys_exit(), sys_expreg(), sys_fao(), sys_faol(), sys_find_held(), sys_forcex(), sys_get_security(), sys_getdvi(), sys_getdviw(), sys_getjpi(), sys_getjpiw(), sys_getlki(), sys_getlkiw(), sys_getsyi(), sys_getsyiw(), sys_gettim(), sys_getuai(), sys_hiber(), sys_imgact(), sys_imgfix(), sys_imgsta(), sys_lckpag(), sys_lkwset(), sys_mgblsc(), sys_mount(), sys_numtim(), sys_process_affinity(), sys_process_capabilities(), sys_purgws(), sys_qio(), sys_qiow(), sys_readef(), sys_resume(), sys_rundwn(), sys_schdwk(), sys_set_implicit_affinity(), sys_set_security(), sys_setast(), sys_setef(), sys_setime(), sys_setimr(), sys_setpri(), sys_setprn(), sys_setprv(), sys_setrwm(), sys_sndopr(), sys_synch(), sys_trnlnm(), sys_ulkpag(), sys_ulwset(), sys_waitfr(), sys_wake(), sys_wfland(), and sys_wflor().
#define INLINE_SYSCALL1 | ( | name, | |||
nr, | |||||
args... | ) |
Value:
({ \ unsigned int resultvar; \ asm volatile ( \ LOADARGS_##nr \ "movl %1, %%eax\n\t" \ "int _0x80\n\t" \ RESTOREARGS_##nr \ : "=a" (resultvar) \ : "i" (__NR_##name) ASMFMT_##nr(args) : "memory", "cc"); \ if (resultvar >= 0xfffff001) \ { \ errno= (-resultvar); \ resultvar = 0xffffffff; \ } \ (int) resultvar; })
Definition at line 266 of file sysdepum.h.
Referenced by sys_close(), sys_connect(), sys_create(), sys_delete(), sys_disconnect(), sys_display(), sys_enter(), sys_erase(), sys_extend(), sys_filescan(), sys_find(), sys_flush(), sys_free(), sys_get(), sys_modify(), sys_nxtvol(), sys_open(), sys_parse(), sys_put(), sys_read(), sys_release(), sys_remove(), sys_rename(), sys_rewind(), sys_rmsrundwn(), sys_search(), sys_setddir(), sys_setddir2(), sys_setdfprot(), sys_space(), sys_ssvexc(), sys_truncate(), sys_update(), sys_wait(), and sys_write().
#define INLINE_SYSCALL3 | ( | name, | |||
nr, | |||||
args... | ) |
Value:
({ \ unsigned int resultvar; \ asm volatile ( \ LOADARGS_##nr \ "movl %1, %%eax\n\t" \ "int _0x80\n\t" \ RESTOREARGS_##nr \ : "=a" (resultvar) \ : "i" (__NR_##name) ASMFMT_##nr(args) : "memory", "cc"); \ if (resultvar >= 0xfffff001) \ { \ errno= (-resultvar); \ resultvar = 0xffffffff; \ } \ (int) resultvar; })
Definition at line 284 of file sysdepum.h.
Referenced by sys_asctim(), and sys_bintim().
#define INLINE_SYSCALLTEST | ( | name, | |||
nr, | |||||
args... | ) |
Value:
({ \ unsigned int resultvar; \ asm volatile ( \ LOADARGS_##nr \ "movl %1, %%eax\n\t" \ "call 0xc0100010\n\t" \ RESTOREARGS_##nr \ : "=a" (resultvar) \ : "i" (__NR_##name) ASMFMT_##nr(args) : "memory", "cc"); \ if (resultvar >= 0xfffff001) \ { \ errno= (-resultvar); \ resultvar = 0xffffffff; \ } \ (int) resultvar; })
Definition at line 302 of file sysdepum.h.
Referenced by sys_testcode().
#define L | ( | name | ) | .L##name |
Definition at line 37 of file sysdepum.h.
#define LOADARGS_0 |
Definition at line 319 of file sysdepum.h.
#define LOADARGS_1 |
Value:
"bpushl .L__X'%k2, %k2\n\t" \ "bmovl .L__X'%k2, %k2\n\t"
Definition at line 320 of file sysdepum.h.
#define LOADARGS_2 LOADARGS_1 |
Definition at line 323 of file sysdepum.h.
#define LOADARGS_3 LOADARGS_1 |
Definition at line 324 of file sysdepum.h.
#define LOADARGS_4 LOADARGS_1 |
Definition at line 325 of file sysdepum.h.
#define LOADARGS_5 LOADARGS_1 |
Definition at line 326 of file sysdepum.h.
#define RESTOREARGS_0 |
Definition at line 328 of file sysdepum.h.
#define RESTOREARGS_1 "bpopl .L__X'%k2, %k2\n\t" |
Definition at line 329 of file sysdepum.h.
#define RESTOREARGS_2 RESTOREARGS_1 |
Definition at line 331 of file sysdepum.h.
#define RESTOREARGS_3 RESTOREARGS_1 |
Definition at line 332 of file sysdepum.h.
#define RESTOREARGS_4 RESTOREARGS_1 |
Definition at line 333 of file sysdepum.h.
#define RESTOREARGS_5 RESTOREARGS_1 |
Definition at line 334 of file sysdepum.h.
#define SYS_ify | ( | syscall_name | ) | __NR_##syscall_name |
Definition at line 33 of file sysdepum.h.
asm | ( | ".L__X'% | ebx = 1\n\t"".L__X'%ecx = 2\n\t"".L__X'%edx = 2\n\t"".L__X'%eax = 3\n\t"".L__X'%esi = 3\n\t"".L__X'%edi = 3\n\t"".L__X'%ebp = 3\n\t"".L__X'%esp = 3\n\t"".macro bpushl name reg\n\t"".if 1 - \\name\n\t"".if 2 - \\name\n\t""pushl %ebx\n\t"".else\n\t""xchgl \\reg , |
|
%ebx\n\t"".endif\n\t"".endif\n\t"".endm\n\t"".macro bpopl name reg\n\t"".if 1-\\name\n\t"".if 2-\\name\n\t""popl%ebx\n\t"".else\n\t""xchgl\\ | reg, | |||
%ebx\n\t"".endif\n\t"".endif\n\t"".endm\n\t"".macro bmovl name reg\n\t"".if 1-\\name\n\t"".if 2-\\name\n\t""movl\\ | reg, | |||
%ebx\n\t"".endif\n\t"".endif\n\t"".endm\n\t" | ||||
) |
int errno |