This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re[3]: gas replaces instructions on sparc


>>> I have this in my .S file:
>>>     clr  %o3
>>> but in the compiled .o file I have:
>>>     mov  %g0, %o3
>>> Why does it happen?

EB>> Because clr isn't a SPARC instruction, it's a "synthethic" instruction which 
EB>> is a "or %g0,%g0," under the hood.  And mov isn't a SPARC instruction either, 
EB>> it's also a "synthethic" instruction which is a "or %g0," under the hood.

IB> I need to recreate the instruction that is disassembled by gdb like
IB> this:
IB> 96 10 20 00    clr  %o3

IB> But both "clr" and "or %g0,%g0" give me this:
IB> 96 10 00 00    mov  %g0, %o3

By the analogy with this:
    96 10 20 d2    mov  0xd2, %o3
I figured out that I need to write: mov 0,%o3


-- 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]