问题标签 [mips]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 分析 MIPS 二进制文件:是否有用于解析二进制数据的 Python 库?
我正在开发一个实用程序,该实用程序需要将十六进制地址解析为二进制文件中的符号函数名称和源代码行号。该实用程序将在 x86 上的 Linux 上运行,尽管它分析的二进制文件将用于基于 MIPS 的嵌入式系统。MIPS 二进制文件是 ELF 格式,使用 DWARF 作为符号调试信息。
我目前正计划 fork objdump,传入一个十六进制地址列表并解析输出以获取函数名称和源代码行号。我已经编译了一个支持 MIPS 二进制文件的 objdump,它正在工作。
我希望有一个包允许我从 Python 代码中本地查找内容,而无需分叉另一个进程。我在 python.org 上找不到任何提及 libdwarf、libelf 或 libbfd,在 dwarfstd.org 上也找不到任何提及 python。
某处是否有合适的模块可用?
pointers - MIPS 汇编指针指向指针?
我想我知道如何处理这个案子,但我只是想确保我做对了。假设您有以下 C 代码:
P 包含一个地址,该地址指向内存中具有另一个地址的位置。我想修改第二个地址。所以MIPS代码:
你会这样做吗?
assembly - MIPS——重要吗?
我的问题:了解 MIPS 编程语言有用吗?
我是一名计算机科学专业的学生,正在上一门专注于 MIPS 的组装课程。我很擅长用高级语言写作,但 Mips 让我有点失望。
MIPS 是我真正应该关注并尝试完全掌握的东西吗?将来会对我有帮助吗?
assembly - 我在哪里可以找到 *all* MIPS 指令的描述
有谁知道一个网站,我可以在其中找到 32 位 MIPS 指令/操作码列表,具有以下功能:
- 清楚地区分真正的操作码和汇编语言宏(伪指令)
- 描述指令行为,包括取决于特权级别的差异。
- 指示在哪个指令集修订版中引入/修订了指令(例如 MIPS I、MIPS II、MIPS32 等)
- 包括特权指令,例如系统调用。
我知道有许多网站记录了指令集的“一部分”,主要用于教学目的。他们倾向于省略或仅部分描述浮点和特权指令。
如果您想知道,我正在查看 MIPS 处理器子集的 Verilog 代码,并试图弄清楚它在多大程度上符合任何真正的 MIPS 处理器的指令集!
gcc - 用于 MIPS、3.4.4 或 4.3.2 的 gcc?
我们对 gcc 3.3.2(用于 MIPS)进行了许多更改,以支持我们正在开发的嵌入式系统的变幻莫测。gcc 3.4 及更高版本似乎大大改进了 MIPS 代码生成,因此我计划将我们的更改向前移植。问题是我应该针对哪个 gcc 版本:3.4.4 还是直接到 4.3.2?移植更改需要大量工作,我不想重复两次并选择更好的结果。
Linux-MIPS 项目仍然推荐 gcc 3.4.4,MIPS Technologies 维护了一个基于 gcc 3.4.4 的修改后的 SDE 工具链。虽然我的嵌入式系统没有运行 Linux,但我尊重他们的专业知识。
从我读过的内容来看,MIPS 后端并没有受益于 4.x 中更高级别的优化,实际上产生的代码比 3.4.4 慢。任何人都可以确认或否认这一点吗?
gcc - LLVM vs GCC MIPS 代码生成,有什么基准吗?
我很想知道 MIPS 代码、GCC 或 LLVM 的“最佳”免费/OSS 编译器是什么,或者有什么比这些更好的吗?
我有兴趣了解更多关于快速和内存受限生成的汇编代码而不是代码大小的信息。
换句话说,llvm-opt 是否比 gcc -O3 做得更好?
mips - Pascal 到 Mips 代码转换
我目前正在为我的 Pascal Parser (Written in C using Lex / Yacc) 开发 Mips 代码生成器。有没有人知道我可以用作参考以确保正确的代码生成的工具?
assembly - 从 MIPS 切换到 x86 程序集时我应该知道什么?
在学校,我们用 MIPS 汇编语言编程已经有一段时间了。我有兴趣深入研究 x86 程序集,我听说这有点难(甚至我的 MIPS 教科书也这么说)。
作为一名 MIPS 程序员,在进入 x86 世界之前,我应该了解哪些核心信息?
linux - 如何在 x86 linux 上执行 MIPS 汇编程序?
为了运行 MIPS 汇编程序,是否有任何用于 x86 linux 的命令行解释器或任何其他程序集?
我希望能够编写简单的 MIPS 汇编程序并从本地机器上的控制台运行它们。
我知道 SPIM,但它需要 X Windows,我很好奇是否有更好的选择。
编辑:原来它不需要 X Windows。我仍然有 SPIM 的问题。在我的拙见中不是最好的。Qemu / 交叉编译的工具链需要更多的工作,但我的怪癖更少。
c++ - C/C++ 链接器 CALL16 在 xxxxx 重定位不针对全局符号
我在链接时遇到这些错误,两条消息都与同一个目标文件有关。
和
第二条消息似乎是我收到 CALL16 错误的原因,但文件编译得很好。
有关解决此问题的任何提示?
仅供参考,我正在交叉编译 MIPS 目标并使用 gcc 4.1.2
编辑:到目前为止没有运气:
这是我使用的标志:-fPIC,-Wl,-rpath,-Wl,-O1
我还尝试了以下方法但没有成功:
-mno-explicit-relocs
-mexplicit-relocs
-mlong-calls
-mno-long-calls
-mxgot
-mno-xgot
同时,我将在这一点上回到源头并进行更多调查。