博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DECLARE_GLOBAL_DATA_PTR 作用
阅读量:6967 次
发布时间:2019-06-27

本文共 358 字,大约阅读时间需要 1 分钟。

DECLARE_GLOBAL_DATA_PTR; 这个宏在include/global_data.h中

#define DECLARE_GLOBAL_DATA_PTR     register volatile gd_t *gd asm ("r8")   

/* 声明一个寄存器变量gd占用r8。这个宏在所有需要引用全局数据指针gd_t *gd的源码中都有声明 
 * 这个声明也避免编译器把r8分配给其他的变量,所以gd就是r8,这个指针变量不占用内存。
 */
/* 定义gd为gd_t类型指针,存储在寄存器r8中 */
/* register:表示变量对于执行速度非常重要,因此应该放在机器的寄存器中(寄存器独立于内存,通常在处理器芯片上) */
/* volatile:用于指定变量的值可以由外部过程异步修改,例如中断例程 */

转载地址:http://ujfsl.baihongyu.com/

你可能感兴趣的文章
VirtualBox 安装Centos 之访问虚拟机里面的服务受阻解决方案
查看>>
点评主流软件开发技术
查看>>
在VSO8中使用QT
查看>>
python学习
查看>>
解决linux系统CentOS下调整home和根分区大小
查看>>
PHP问题 —— PHP Parse error: syntax error, unexpected
查看>>
JAVA基础知识之Set集合
查看>>
C++编译步骤
查看>>
数据库之Schema设计
查看>>
java 应用连接oracle 超级慢的解决方法
查看>>
tcp_tw_recycle和tcp_timestamps导致connect失败问题
查看>>
mybatis中的#和$的区别
查看>>
Linux中的echo简介(自我总结)(44)
查看>>
Selenium Firefox启动提示导入收藏夹
查看>>
springboot oauth2 fetch 关于跨域请求的问题
查看>>
PostgreSQL调研
查看>>
软件熵:软件开发中推倒重来的过程就是软件熵不断增加的过程
查看>>
如何安装Google浏览器插件
查看>>
Spring Cloud Config 集中式配置
查看>>
java生成验证码
查看>>