19#ifndef __LIB_LIBARCH_ARM64_ARM64TRAPS_H
20#define __LIB_LIBARCH_ARM64_ARM64TRAPS_H
62 register unsigned reg8
asm (
"x8") = api;
63 register unsigned reg0
asm (
"x0") = arg1;
65 asm volatile (
"svc #0\n"
67 :
"r"(reg8),
"r"(reg0)
83 register unsigned reg8
asm (
"x8") = api;
84 register unsigned reg0
asm (
"x0") = arg1;
85 register unsigned reg1
asm (
"x1") = arg2;
87 asm volatile (
"svc #0\n"
89 :
"r"(reg8),
"r"(reg0),
"r"(reg1)
106 register unsigned reg8
asm (
"x8") = api;
107 register unsigned reg0
asm (
"x0") = arg1;
108 register unsigned reg1
asm (
"x1") = arg2;
109 register unsigned reg2
asm (
"x2") = arg3;
111 asm volatile (
"svc #0\n"
113 :
"r"(reg8),
"r"(reg0),
"r"(reg1),
"r"(reg2)
132 register unsigned reg8
asm (
"x8") = api;
133 register unsigned reg0
asm (
"x0") = arg1;
134 register unsigned reg1
asm (
"x1") = arg2;
135 register unsigned reg2
asm (
"x2") = arg3;
136 register unsigned reg3
asm (
"x3") = arg4;
138 asm volatile (
"svc #0\n"
140 :
"r"(reg8),
"r"(reg0),
"r"(reg1),
"r"(reg2),
"r"(reg3)
160 register unsigned reg8
asm (
"x8") = api;
161 register unsigned reg0
asm (
"x0") = arg1;
162 register unsigned reg1
asm (
"x1") = arg2;
163 register unsigned reg2
asm (
"x2") = arg3;
164 register unsigned reg3
asm (
"x3") = arg4;
165 register unsigned reg4
asm (
"x4") = arg5;
167 asm volatile (
"svc #0\n"
169 :
"r"(reg8),
"r"(reg0),
"r"(reg1),
"r"(reg2),
"r"(reg3),
"r"(reg4)
ulong trapKernel3(ulong api, ulong arg1, ulong arg2, ulong arg3)
Perform a kernel trap with 3 arguments.
ulong trapKernel4(ulong api, ulong arg1, ulong arg2, ulong arg3, ulong arg4)
Perform a kernel trap with 4 arguments.
ulong trapKernel5(ulong api, ulong arg1, ulong arg2, ulong arg3, ulong arg4, ulong arg5)
Perform a kernel trap with 5 arguments.
ulong trapKernel1(ulong api, ulong arg1)
Perform a kernel trap with 1 argument.
ulong trapKernel2(ulong api, ulong arg1, ulong arg2)
Perform a kernel trap with 2 arguments.
unsigned long ulong
Unsigned long number.