小编wzf*_*943的帖子

了解此零件臂装配代码

.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.更重要的是,我也不知道如何使用这部分代码,它看起来不像常规功能.所以我不知道如何"召唤"它.

assembly arm gnu-assembler cortex-m

3
推荐指数
1
解决办法
2917
查看次数

理解此Header文件的这一部分

#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)

似乎作者定义了某种宏函数,但我不明白这个函数是如何工作的?

c macros gcc typedef c-preprocessor

2
推荐指数
1
解决办法
663
查看次数

标签 统计

arm ×1

assembly ×1

c ×1

c-preprocessor ×1

cortex-m ×1

gcc ×1

gnu-assembler ×1

macros ×1

typedef ×1