Can I assign left shift in relocation HOWTO table ??
김봉진
billyjiny@gmail.com
Sat Oct 17 07:17:00 GMT 2009
Hello.
1)
i am porting bfd/elf32-arm.c to my own processor
My processor's ISA has splitted immediate bit field.
e.g.
31 ....................... 15 ..... 12 11 .......... 5 4 3 2 1
- - - - - - - - - - - - - - simm9_h . ......... simm9_l
9 bit immediate is splitted into 4 high bits and 5 low bits,
and high part is assign in bit 15 ~ 12.
In reloc table HOWTO,
there is a field for 'rightshift' value
but i need to split 9 bit and shift 4 high bits left to put them into insn.
is it possible? how can i do it?
2)
i want to load 32 bit address of a variable.
i want my gcc to output
ld r2, var
and my assembler automatically map that 1 insn into 2 insns
movi r2, hi16(var)
ori r2, lo16(var)
because my ISA has no 32 bit immediate bit field.
in other words, i want my assembler can support 'macro' insn.
how can i do it?
3)
i saw '.set noreorder' in gcc output with -S option when delay slot is enabled
it means that assembler can reorder the insns, right?
if i want to reorder some insns according to certain rules,
because of the data dependencies,
how can i do it?
B. J. Kim
More information about the Binutils
mailing list