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]

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


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