gcc 3.3.2 Wind River VxWorks PowerPC
David Edelsohn
dje@watson.ibm.com
Wed Mar 5 15:04:00 GMT 2008
>>>>> Duncan Purll writes:
Duncan> I am in the process of verifying that the gnu assembler produces object code which corresponds on an instruction-by-instruction basis with the interleaved source / assembly language listing obtained via -Wa,-ahls. This is for the purposes of software certification. I need to create C source which causes the compiler to emit specific mnemonics (eg.mfctr instruction etc.) but do not know how to force this. I have looked in rs6000.md but this does not contain the instruction mnemonics I am looking for. Can you advise of a way in which I can determine / predict which mnemonics will be generated for particular C source constructs?
mfctr and similar instructions are generated by the movsi_internal1 and
movdi_internal1 patterns, the
mf%1 %0
mt%0 %1
alternatives.
"mfctr" will be very rare. I'm not sure there is any easy C code that
would produce it. GCC tries to avoid placing values into CTR unless it
specifically is needed for an instruction that requires that register,
such as a jump or a loop. PowerPC does not generate any results in CTR.
Either GCC would need to spill the value to reuse CTR for some other
purpos or somehow want the iteration count of a loop only iterated in CTR.
David
More information about the Gcc
mailing list