如何解决在C代码中使用指令的原始二进制Blob
我正在使用TCC(Tiny C编译器)进行jit编译,但是它对汇编的支持有限,我经常对此感到困惑...我想知道是否有某种技巧可以插入原始文件指令插入内联汇编?如:
mov -0x18(%rbp),%rax
finit
flds (%rax)
/* Custom unsupported binary instructions here */
flds (%rcx)
我知道这不是一件容易维护的事情,但是我想保持TCC不变。
解决方法
如果它支持标准的GAS / unix-assembler指令,例如.byte 0x00,0x12
,则可以发出所需的任何字节序列。 (如果要使用.word
或.long
,也可以将16或32位立即数写为单个32位数字。)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。