]> git.proxmox.com Git - qemu.git/commitdiff
endianness fix
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>
Wed, 25 Aug 2004 22:30:56 +0000 (22:30 +0000)
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>
Wed, 25 Aug 2004 22:30:56 +0000 (22:30 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1055 c046a42c-6fe2-441c-8c8c-71466251a162

ppc-dis.c

index 354b2ac8cba6e141d2fbce607d833f13c3cac175..fcced1785c0083fcf6b9130e14596b66c2eb6347 100644 (file)
--- a/ppc-dis.c
+++ b/ppc-dis.c
@@ -3076,15 +3076,20 @@ static int print_insn_powerpc(FILE *, uint32_t insn, unsigned memaddr, int diale
 int print_insn_ppc (bfd_vma pc, disassemble_info *info)
 {
     uint32_t opc;
-
-    (*info->read_memory_func)(pc, (bfd_byte *)(&opc), 4, info);
-    return print_insn_powerpc (info->stream, tswap32(opc), pc,
+    bfd_byte buf[4];
+
+    (*info->read_memory_func)(pc, buf, 4, info);
+    if (info->endian == BFD_ENDIAN_BIG)
+        opc = bfd_getb32(buf);
+    else
+        opc = bfd_getl32(buf);
+    return print_insn_powerpc (info->stream, opc, pc,
                                PPC | B32 | M601);
 }
 
 /* Print a PowerPC or POWER instruction.  */
 
-int
+static int
 print_insn_powerpc (FILE *out, uint32_t insn, unsigned memaddr,
                    int dialect)
 {