* e500_registers.h (EVR): Cast the 32-bit value of the GPR to an
unsigned type before or-ing it with a 64-bit value.
This commit is contained in:
parent
06d5cf63af
commit
71d39cfcfd
2 changed files with 10 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
|||
2004-06-28 Jim Blandy <jimb@redhat.com>
|
||||
|
||||
* e500_registers.h (EVR): Cast the 32-bit value of the GPR to an
|
||||
unsigned type before or-ing it with a 64-bit value.
|
||||
|
||||
2004-06-15 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* hw_htab.c (htab_sum_binary(bfd): Use bfd_get_section_size
|
||||
|
|
|
@ -79,5 +79,8 @@ struct e500_regs {
|
|||
/* e500 register high bits */
|
||||
#define GPRH(N) cpu_registers(processor)->e500.gprh[N]
|
||||
|
||||
/* e500 unified vector register */
|
||||
#define EVR(N) ((((unsigned64)GPRH(N)) << 32) | GPR(N))
|
||||
/* e500 unified vector register
|
||||
We need to cast the gpr value to an unsigned type so that it
|
||||
doesn't get sign-extended when it's or-ed with a 64-bit value; that
|
||||
would wipe out the upper 32 bits of the register's value. */
|
||||
#define EVR(N) ((((unsigned64)GPRH(N)) << 32) | (unsigned32) GPR(N))
|
||||
|
|
Loading…
Reference in a new issue