This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Can I assign left shift in relocation HOWTO table ??
- From: 김봉진 <billyjiny at gmail dot com>
- To: binutils <binutils at sourceware dot org>
- Date: Sat, 17 Oct 2009 16:17:49 +0900
- Subject: Can I assign left shift in relocation HOWTO table ??
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