发布时间:2013-01-05 14:16:39
最近看mips linux kernel boot code, 在调试时用到printf,发现最终会调用outb从uart输出,于是想查一下outb如何实现,但是用ctags 没有查到,用grep 可没有查到。后来才发现其定义在asm/io.h中,以下是相关的定义:#define __BUILD_IOPORT_SINGLE(pfx, bwlq, type, p, slow) \  ......【阅读全文】
发布时间:2012-12-28 09:44:09
在linux-mips中经常看到的一些伪指令,在这里做一个小结。再碰见再补充啦//Mips中常见的.set伪指令;//下面的解说,优先使用中文,缺少的部分使用英文。.set 告诉汇编器如何进行汇编;标号:"1:"是数字标号,大多数汇编器都接受它作为局部标号。在一个程序里你可以有任意多个标号都为“1:”通过“1f”引用下一个标号“1:通过“1b”来引用上一个“1:”.text告诉汇编器,除非另有说明,应当把此后产生的代码直接放进目标文件中名叫“.text”的区中;.globl声明“name”为全局变量,该变量名要包括在模块的符号表内,而且名字在整个程序范围内必须是唯一的。.ent 对生成的代码没......【阅读全文】