SuperH架构下汇编时生成缓存透写地址的GNU汇编器语法问询
SuperH架构下GAS实现缓存透写地址的汇编语法
现有SuperH架构下的变量定义如下:
buffer_address: .long buffer buffer: .zero 1024
根据需求,需要定义一个新变量buffer_address_cache_through,其值为buffer的地址与0x20000000按位或后的结果,以此实现缓存透写(cache-through)方式的内存访问。
在GNU汇编器(GAS)中,可以直接在.long伪指令中使用算术表达式完成地址的按位或运算,对应的语法为:
buffer_address_cache_through: .long buffer | 0x20000000
GAS会在汇编阶段自动计算buffer的地址与0x20000000按位或的结果,并将该值存入buffer_address_cache_through变量中,无需运行时计算。
内容的提问来源于stack exchange,提问作者gfdjjrtiejo
相关产品推荐
相关产品推荐

