ARMv8 浮点输出内联汇编

2024-01-30

为了添加两个整数,我写:

int sum;
asm volatile("add %0, x3, x4" : "=r"(sum) : :);

我怎样才能用两个浮动来做到这一点? 我试过:

float sum;
asm volatile("fadd %0, s3, s4" : "=r"(sum) : :);

但这给了我一个错误:

错误:操作数 1 应该是 SIMD 向量寄存器 - `fadd x0,s3,s4'

有任何想法吗?


由于寄存器在 AArch64 中可以有多个名称(v0、b0、h0、s0、d0 都引用同一个寄存器),因此有必要向打印字符串添加输出修饰符:

关于上帝之锤 https://godbolt.org/z/djWRDV

float foo()
{
    float sum;
    asm volatile("fadd %s0, s3, s4" : "=w"(sum) : :);
    return sum;
}

double dsum()
{
    double sum;
    asm volatile("fadd %d0, d3, d4" : "=w"(sum) : :);
    return sum;
}

将产生:

foo:
        fadd s0, s3, s4 // sum
        ret     
dsum:
        fadd d0, d3, d4 // sum
        ret  
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ARMv8 浮点输出内联汇编 的相关文章

随机推荐

  • App Engine Java 8 标准环境中的 Servlet 异步处理支持

    我正在尝试使用 GAE J8 标准环境 无可扩展环境 的 servlet 3 1 中的异步处理支持 基本上我有一个 servlet 注释为 WebServlet name MyServletName urlPatterns dosometh
  • 如何在javafx代码中添加Anchorpane约束?

    我知道您可以在 fxml 中添加 Anchor Pane 包含 例如 AnchorPane bottomAnchor 0 0 但是您可以在 java 代码中设置 AnchorPane 约束吗 AnchorPane 上有一组静态方法 您可以使
  • C++/CLI MSIL 程序集中的指针数组

    我正在尝试包装一些遗留的 C 代码 以便与在 NET Core 上运行的 C 一起使用 我在用着这里给出的方法 https stackoverflow com a 9004833创建编译为纯 MSIL 的 C 包装器 它对于简单的函数运行良
  • 在什么情况下,finally {} 块不会执行?

    在Java中try catch finally 块 内的代码finally 通常被认为 保证 运行 无论 try catch 中发生什么 然而 我知道至少在两种情况下它会not执行 If System exit 0 叫做 或者 如果异常一直
  • WildFly 中未找到 Nashorn 类

    我需要从 WildFly 中运行的 Web 应用程序内的 nashorn 访问内部类 以下代码在我的机器上运行良好 public class NashornTest public static void main String args t
  • 休眠验证器。如何使用@Valid注解?

    目的是什么 Valid将其放在方法参数级别时的注释 public void Valid Person p 我创建了一个测试 并将无效对象传递给该方法 但没有任何反应 我希望得到一个例外 The Valid对象上的注释指示验证框架处理带注释的
  • CMUSphinx 实时语音识别太慢?

    CMU Sphinx 识别实时语音太慢 不知道你有什么办法增强它吗 这是我的配置 configuration setAcousticModelPath WSJ 8gau 13dCep 16k 40mel 130Hz 6800Hz confi
  • JavaScript RegExp 中的 (*SKIP)(*FAIL) 解决方法

    我有一个在 regex101 com 中运行良好的正则表达式模式 a SKIP FAIL bword b 我正在尝试将其设为正则表达式 以便可以在replace JavaScript 中的函数 JavaScript 代码行是 var reg
  • 在循环中使用 numpy load 时内存溢出

    循环加载 npz 文件会导致内存溢出 取决于文件 列表长度 以下似乎都没有帮助 删除文件中存储数据的变量 使用 mmap 调用 gc collect 垃圾收集 以下代码应该重现该现象 import numpy as np generate
  • 如何检查iOS版本是iOS 6? [复制]

    这个问题在这里已经有答案了 可能的重复 检查 iPhone iOS 版本 https stackoverflow com questions 3339722 check iphone ios version 我想在 iOS 中检查 iOS
  • 如何实现A*算法? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 在 C 中简单实现 AN A 星 算法应该采用哪种方法 本文 https web archive org web 2017050503
  • numpy.sum 性能取决于轴

    对 numpy 数组中的维度求和时 第一个轴和最后一个轴之间是否存在性能差异 具体来说 考虑以下代码 其中sum1 and sum2会执行得更快吗 import numpy as np a np ones 1000 200 b np one
  • 是否可以限制每秒运行的 goroutine 数量?

    我有一个 URL 列表 我需要使用 goroutine 来同时触发 HTTP 请求 是否有办法检查并限制每秒发送的 HTTP 请求数量 Go 中的一个非常简单的版本是对漏桶 https en wikipedia org wiki Leaky
  • 如何从子查询返回多个值

    SELECT state business a report FROM base WHERE state IN SELECT a state FROM heart a join SELECT CAST MAX percent adults
  • 按 ID 累积总和,有滞后

    我想通过 id 创建一个累积和 但是 它不应该对属于正在计算的行的值求和 我已经尝试过使用 cumsum 了 但是 我不知道如何添加一条语句 指定不添加求和行的金额 我正在寻找的结果列是第三列 名为 sum 例如 对于 id 1 第一行 s
  • PySimpleGUI 表元素。如何读取选定的行?

    我是 Python 的初学者 甚至是 PySimpleGui 的初学者 我非常喜欢使用它来创建带有 GU 界面的小型应用程序 我遇到的问题是关于表格元素的 到目前为止 我已成功使用 sqlite 数据库中的数据填充表元素 一旦表格准备好数据
  • 如何将 `git diff --color-words` 的输出转换为 HTML?

    对于处理以纯文本形式存储的散文文本 我真的很喜欢以下输出git diff color words 但我不喜欢它依赖于 ANSI 终端转义序列的方式 我希望获得可用于转换为 HTML 的输出 某种用户友好的原始字符显示 或生成有关两个文件之间
  • HTML5 可以通过其视频标签播放 .mpd Manifest 文件吗?

    我有一个 Movie Manifest mpd 文件 由 5 个 webm 视频流 由不同大小和 bps 组成 和 1 个音频文件组成 我要问的问题是 可以通过 简单 的HTML5视频标签来播放吗 我已经尝试过这个 但它不起作用
  • 随机卡牌生成

    我需要从数组中随机生成三张卡 我有 52 张卡名称的数组 从卡1到卡52 String rank new String 52 for int i 0 i
  • ARMv8 浮点输出内联汇编

    为了添加两个整数 我写 int sum asm volatile add 0 x3 x4 r sum 我怎样才能用两个浮动来做到这一点 我试过 float sum asm volatile fadd 0 s3 s4 r sum 但这给了我一