.syntax unified
.thumb
.cpu cortex-m4
.arch armv7e-m
.fpu fpv4-sp-d16
/* Changes from unprivileged to privileged mode. */
.thumb_func
.section .kernel
.global raise_privilege
.type raise_privilege, %function
raise_privilege:
mrs r0, control
bic r0, r0, #1
msr control, r0
dsb
isb
bx lr
Run Code Online (Sandbox Code Playgroud)
这是手臂组装代码的一部分.我可以查看芯片手册来弄清楚说明的含义.但我不知道如何弄清楚汇编程序指令的行为.thumb_func.更重要的是,我也不知道如何使用这部分代码,它看起来不像常规功能.所以我不知道如何"召唤"它.
#ifndef STDARG_H_INCLUDED
#define STDARG_H_INCLUDED
typedef __builtin_va_list va_list;
#define va_start(v,l) __builtin_va_start(v,l) // I don't understand this
#define va_arg(v,l) __builtin_va_arg(v,l)
#define va_end(v) __builtin_va_end(v)
#endif
Run Code Online (Sandbox Code Playgroud)
似乎作者定义了某种宏函数,但我不明白这个函数是如何工作的?