CFI support for GNU assembler (GAS)
来源:互联网 发布:游戏编程 培训机构 编辑:程序博客网 时间:2024/06/05 00:31
http://www.logix.cz/michal/devel/gas-cfi/
CFI support for GNU assembler (GAS)
Modern ABIs don't require frame pointers to be used in functions. However missing FPs bring
difficulties when doing a backtrace. One solution is to provide Dwarf-2 CFI data for each such
function. This can be easily done for example by GCC in it's output, but isn't that easy to
write by hand for pure assembler functions.
With the help of these .cfi_* directives one can add appropriate unwind info into his asm source
without too much trouble.
Directives implemented so far:
.cfi_startproc
Use at the beginning of each function.
It initializes some internal data structures and emits initial CFI instructions.
.cfi_endproc
Opens .eh_frame, generates appropriate binary structures (CIE, FDE) and sets up relocation records.
.cfi_def_cfa reg,imm
Set a rule for computing CFA to: take content of register reg and add imm to it.
.cfi_def_cfa_register reg
Change rule for CFA to use reg. Offset remains the same.
.cfi_def_cfa_offset imm
Change rule for CFA to use offset imm. Register remains the same.
.cfi_adjust_cfa_offset imm
Like the previous one but imm is a relative value that will be added
to current offset instead of an absolute value as in .cfi_def_cfa_offset.
.cfi_offset reg,imm
Generate a rule saying that register reg is saved at offset imm from CFA.
CFI support for GNU assembler (GAS)
Modern ABIs don't require frame pointers to be used in functions. However missing FPs bring
difficulties when doing a backtrace. One solution is to provide Dwarf-2 CFI data for each such
function. This can be easily done for example by GCC in it's output, but isn't that easy to
write by hand for pure assembler functions.
With the help of these .cfi_* directives one can add appropriate unwind info into his asm source
without too much trouble.
Directives implemented so far:
.cfi_startproc
Use at the beginning of each function.
It initializes some internal data structures and emits initial CFI instructions.
.cfi_endproc
Opens .eh_frame, generates appropriate binary structures (CIE, FDE) and sets up relocation records.
.cfi_def_cfa reg,imm
Set a rule for computing CFA to: take content of register reg and add imm to it.
.cfi_def_cfa_register reg
Change rule for CFA to use reg. Offset remains the same.
.cfi_def_cfa_offset imm
Change rule for CFA to use offset imm. Register remains the same.
.cfi_adjust_cfa_offset imm
Like the previous one but imm is a relative value that will be added
to current offset instead of an absolute value as in .cfi_def_cfa_offset.
.cfi_offset reg,imm
Generate a rule saying that register reg is saved at offset imm from CFA.
0
上一篇:CPU如何操作内存?
下一篇:安装使用oprofile
相关热门文章
- socket中的短连接与长连接,心...
- Haproxy、Keepalived双主高可...
- Tomcat的性能与最大并发(1000)...
- Nginx深入详解之日志
- socket编程的同步、异步与阻塞...
- linux dhcp peizhi roc
- 关于Unix文件的软链接
- 求教这个命令什么意思,我是新...
- sed -e "/grep/d" 是什么意思...
- 谁能够帮我解决LINUX 2.6 10...
给主人留下些什么吧!~~
评论热议
0 0
- CFI support for GNU assembler (GAS)
- 对比 GNU Assembler(GAS)和 Netwide Assembler(NASM)
- GNU assembler not found, install/update gas-preprocessor
- ARM Assembler VS GNU Assembler
- GNU Assembler 伪指令
- Linux Assembler - GAS and NASM
- Inline Assembly(for GNU assembler)-the difference of AT&T & intel
- GNU GAS (GNU ARM汇编)
- MD5 for Assembler
- ARM Assembler for iOS
- GNU ARM 汇编伪指令(Assembler Directives)
- GNU ARM 汇编伪指令(Assembler Directives)
- GAS(GNU ASM)汇编概述
- ATT汇编(gas:gnu assembly)
- CFI
- Linux汇编语法简介(GNU GAS)
- Linux 汇编语言(GNU GAS汇编)区别
- flat assembler 1.67.5 for Windows
- GCC编译优化指南
- GCOV 用法
- 100 个 Linux 常用命令大全(下)
- CPU如何操作内存?
- C#_ImageList和ListView的使用
- CFI support for GNU assembler (GAS)
- 安装使用oprofile
- 第二本书的第一章 示例一
- Linux中select、poll和epoll的区别
- Handling oprofile sample buffer overflows
- RC4加密解密
- 4 Linux Commands To View Page Faults Statistics
- 加入LINUX内核邮件组
- CPU处理数据流程
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
冲刺是什么意思
在贵妃娘娘身体里冲刺
第七十二章狂野冲刺
把她放在阳台上冲刺
感冒冲剂
板蓝根冲剂
小柴胡冲剂
柴胡冲剂
中药冲剂
肾石通冲剂
金钱草冲剂
夏桑菊冲剂
冲剂
鼻炎冲剂
999感冒冲剂
鱼腥草冲剂
虎梅冲剂
冲剂是什么
龙牡壮骨冲剂
龙牡壮骨冲剂被曝光
龙牡壮骨冲剂被曝光039
感冒冲剂有哪些
小儿感冒冲剂
龙牡壮骨冲剂性早熟
感冒颗粒冲剂
感冒冲剂说明书
喝感冒冲剂能喝酒吗
冲剂可以干吃吗
感冒冲剂饭前吃还是饭后吃
尿路感染冲剂
驴胶补血冲剂
庆大霉素冲剂
阿奇霉素冲剂说明书
合生元益生菌冲剂
衡欣牌益生菌冲剂
小葵花益生菌冲剂
森山铁皮枫斗冲剂价格
合生元儿童益生菌冲剂
哺乳期可以喝板蓝根冲剂吗
孕妇可以喝板蓝根冲剂吗
来月经可以喝999感冒冲剂吗