2 #include <sys/syscall.h>
5 .global sys_cacheflush @ const void *start_addr, const void *end_addr
11 mov r7, #(__ARM_NR_cacheflush & 0xff)
12 #if (__ARM_NR_cacheflush & 0x00ff00)
13 orr r7, r7, #(__ARM_NR_cacheflush & 0x00ff00)
15 #if (__ARM_NR_cacheflush & 0xff0000)
16 orr r7, r7, #(__ARM_NR_cacheflush & 0xff0000)
22 swi __ARM_NR_cacheflush
34 stmfd sp!, {r4, r5, r6}
35 ldmia r12, {r4, r5, r6}
37 ldmfd sp!, {r4, r5, r6}
39 .global g_syscall_error
52 ldr r12,[sp, #4] @ arg6 - convenience func ptr
54 ldr r4, [sp, #4] @ arg5
64 .macro raw_syscall_easy name nr
71 .macro raw_syscall name nr
75 stmfd sp!, {r4, r5, r6, lr}
76 ldmia r12, {r4, r5, r6}
78 stmfd sp!, {r4, r5, r6, pc}
81 raw_syscall_easy g_open_raw, __NR_open
82 raw_syscall_easy g_read_raw, __NR_read
83 raw_syscall_easy g_write_raw, __NR_write
84 raw_syscall_easy g_futex_raw, __NR_futex
85 raw_syscall_easy g_nanosleep_raw, __NR_nanosleep
86 raw_syscall_easy g_clock_gettime_raw, __NR_clock_gettime
87 raw_syscall_easy g_rt_sigprocmask_raw, __NR_rt_sigprocmask