【发布时间】:2017-04-12 00:04:36
【问题描述】:
我目前正在旧编译器(大约 2004 年的 GCC)上测试 C++ 中的一些内联汇编,我想对浮点数执行平方根函数。在尝试并搜索成功的方法后,我遇到了以下代码
float r3(float n){
__asm__("fsqrt" : "+t" (n));
return n;
};
这很有效。问题是,即使我了解所使用的汇编指令,我也无法找到任何特定文档来说明"+t" 标志在n 变量上的含义。我的真正想法是,这似乎是将变量 n 视为输入和输出变量的一种方式,但我无法找到有关它的任何信息。那么,"t" 标志到底是什么?它是如何在这里工作的?
【问题讨论】: