ARM SIMD instruction -- fcmpe

news/2025/1/15 15:35:45/

FCMPE

       Floating-point signaling Compare (scalar). This instruction compares the two SIMD&FP source register values, or the first SIMD&FP source register value and zero. It writes the result to the PSTATE.{N, Z, C, V} flags.

       浮点数比较(标量)。此指令比较两个SIMD&FP源寄存器值,或第一个SIMD&FP源寄存器的值和零。它将结果写入PSTATE。{N、Z、C、V}个标志。

  402894:    9e620009     scvtf    d9, x0
        double sc_clk_tck = sysconf(_SC_CLK_TCK);

  402898:    1e602138     fcmpe    d9, #0.0
  40289c:    5400012c     b.gt    4028c0 <ferror@plt+0x9e0>   // gt : 有符号数大于 >
  4028a0:    f94007e0     ldr    x0, [sp, #8]        // x0=[0x419a80]=0x4194d0
  4028a4:    f00000a1     adrp    x1, 419000 <ferror@plt+0x17120>
  4028a8:    528081c2     mov    w2, #0x40e                     // #1038
  4028ac:    9114c021     add    x1, x1, #0x530      // x1=0x419530="src/pstree.c"
  4028b0:    910bc003     add    x3, x0, #0x2f0      // x3=0x4194d0+0x2f0=0x4197c0="s %*s %*s %*s %*s %*s %*s %*s %*s %Lu"
  4028b4:    f00000a0     adrp    x0, 419000 <ferror@plt+0x17120>
  4028b8:    911fa000     add    x0, x0, #0x7e8      // x0=0x4197e8="sc_clk_tck > 0"
  4028bc:    97fffd69     bl    401e60 <__assert_fail@plt>
        assert(sc_clk_tck > 0);

  4028c0:    aa1903e1     mov    x1, x25             // x1=x25=0x421e28="r"
  4028c4:    f00000a0     adrp    x0, 419000 <ferror@plt+0x17120>
  4028c8:    911fe000     add    x0, x0, #0x7f8      // x0=0x4197f8="/proc/uptime"
  4028cc:    97fffca5     bl    401b60 <fopen@plt>
  4028d0:    aa0003e3     mov    x3, x0
  4028d4:    b4002a80     cbz    x0, 402e24 <ferror@plt+0xf44>   // exit(1);
        if (!(file = fopen("/proc/uptime", "r"))) {
            // cbz 402e24
            printf("error opening uptime file.\n");
            exit(1);
        }

(gdb) p/d $d9
$8 = {f = 100, u = 4636737291354636288, s = 4636737291354636288}
(gdb) p/x $d9
$9 = {f = 0x64, u = 0x4059000000000000, s = 0x4059000000000000}
(gdb) p/f $d9
$10 = {f = 100, u = 100, s = 100}
(gdb) x/i $pc
=> 0x402898:    fcmpe   d9, #0.0
(gdb) n
0x000000000040289c in ?? ()
=> 0x000000000040289c:  2c 01 00 54     b.gt    0x4028c0
(gdb)
0x00000000004028c0 in ?? ()
=> 0x00000000004028c0:  e1 03 19 aa     mov     x1, x25
(gdb)
0x00000000004028c4 in ?? ()
=> 0x00000000004028c4:  a0 00 00 f0     adrp    x0, 0x419000
(gdb)


http://www.ppmy.cn/news/1522113.html

相关文章

【重学 MySQL】五、MySQL 的卸载

【重学 MySQL】五、MySQL 的卸载 停止MySQL服务卸载MySQL程序删除残余文件清理注册表删除环境变量配置重启电脑 MySQL的卸载过程需要仔细操作&#xff0c;以确保彻底卸载并清理所有相关文件和配置。 停止MySQL服务 打开任务管理器&#xff1a;右键点击任务栏空白处&#xff0…

挂轨巡检机器人在发电厂与煤矿皮带机场景的应用

一、引言 在发电厂和煤矿等重工业领域&#xff0c;皮带机作为关键设备&#xff0c;其运行状态直接关系到生产效率和安全。然而&#xff0c;传统的人工巡检方式不仅效率低下&#xff0c;还存在安全隐患。随着智能巡检技术的不断发展&#xff0c;杭州旗晟智能科技有限公司推出的…

汽车智能驾驶算法汇总

汽车智能驾驶算法是自动驾驶技术的核心&#xff0c;它们集成了多个学科的知识&#xff0c;包括计算机视觉、机器学习、控制理论、路径规划等。以下是对汽车智能驾驶算法的一个详细汇总&#xff0c;内容分为几个关键部分进行阐述。 一、计算机视觉算法 计算机视觉是智能驾驶算…

Gemini AI 与 ChatGPT:哪个更适合为我策划婚礼?

我在六月订婚后&#xff0c;一心想着婚礼钟声&#xff0c;但在看到这些婚礼场地报价后&#xff0c;更像是警铃声响起。 “叮咚”已经被重新混音成“哗啦啦”——我需要帮助。 我甚至不知道如何 开始 计划婚礼。第一步是什么&#xff1f;我需要优先考虑什么&#xff1f;哪些任…

坐牢第三十四天(c++)

一.作业 1.栈的手写 #include <iostream> using namespace std; // 封装一个栈 class stcak { private:int *data; //int max_size; // 最大容量int top; // 下标 public:// 无参构造函数stcak();// 有参构造函数stcak(int size);// 拷贝构造函数stcak(const s…

深度学习从入门到精通——感知损失介绍及基本实现

Perceptual Losses 感知损失&#xff08;Perceptual Loss&#xff09;感知损失的定义 图像转换问题&#xff08;Image Transformation Tasks&#xff09;现有方法代码解释感知损失&#xff08;Perceptual Loss&#xff09;1. 感知损失的背景2. 感知损失的定义3. 感知损失的优点…

[数据集][目标检测]抽烟检测数据集VOC+YOLO格式22559张2类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;22559 标注数量(xml文件个数)&#xff1a;22559 标注数量(txt文件个数)&#xff1a;22559 标…

MATLAB中的线性规划与非线性规划

目录 1. 引言 2. 线性规划&#xff08;LP&#xff09; 2.1 线性规划的基本概念 2.2 MATLAB中的线性规划求解 2.3 线性规划的应用 3. 非线性规划&#xff08;NLP&#xff09; 3.1 非线性规划的基本概念 3.2 MATLAB中的非线性规划求解 3.3 非线性规划的应用 4. 线性规划…