ret value of bfd_get_sign_extend_vma
Michael Mueller
michael.mueller@kay-mueller.de
Tue Jun 22 07:33:00 GMT 2004
> But on other systems, and m68k is one, the cpu duplicates the topmost bit
> of the 16-bit field into the upper (missing from the instruction) 16 address
> bits. So on these systems, 16-bit addresses 0x0000 to 0x7fff address 32-bit
> range 0x00000000 to 0x00007fff, and 16-bit addresses 0x8000 to 0xffff
> address 32-bit range 0xffff8000 to 0xffffffff.
So that means that if I access a 16 bit range from 0x7ff0 to 0x8010 I
access two noncontiguous pieces of memory. Funny.
But bfd_get_sign_extend_vma returns 0 on m68k doesn't it?
>
> That is to say, on some systems the reduced addressing mode allows you to
> access the lowest 64kb block at the bottom of memory; on others it allows
> you to access both the lowest 32kb and the highest 32kb of the 32-bit range.
>
> So yes, addresses are basically unsigned; but the behaviour here is the
> same as takes place in sign extension, and it's a reasonable analogy if you
> think of negative addresses as referring to the top end of the memory map.
>
>
> cheers,
> DaveK
--
=== Michael Mueller ==================
Tel. + 49 8171 63600
Fax. + 49 8171 63615
Web: http://www.mm.kay-mueller.de
http://www.planets.kay-mueller.de
======================================
More information about the Binutils
mailing list