Converts regular Power Architecture assembler mnemonics to equivalent VLE (Variable Length Encoded) assembler mnemonics in the inline assembler and standalone assembler.
-ppc_asm_to_vle
C/C++ source is input to compiler inline assembler where as assembly source is input to standalone assembler.
While translating assembly statements in C or C++ or assembly source code, the compiler inline assembler or standalone assembler will replace each regular Power Architecture assembler mnemonic with its matching VLE instruction if one exists. The mnemonics for VLE (Variable Length Encoding) instructions begin with se_ or e_. The compiler's inline assembler recognizes these mnemonics when the compiler is configured to generate VLE object code. The same is with assembler. If an equivalent VLE instruction does not exist for an UISA instruction then it might generate multiple VLE instructions for that operation.
Assembler changes the section .text to .text_vle. For user defined sections, LCF needs modification.
Consider test.s
.section .mytext
tmp:
do_loop00:
B exit0
Add r0,r0,r1
.text
exit0:
blr
Assemble with option -ppc_asm_to_vle
In LCF
.text_vle (VLECODE) : {
*(.text)
*(.text_vle)
(.mytext)
}