Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/arm/arm byte swap the insn on BE8 it's LE in memory...
details: https://anonhg.NetBSD.org/src/rev/a897f09a8227
branches: trunk
changeset: 325898:a897f09a8227
user: matt <matt%NetBSD.org@localhost>
date: Fri Jan 10 23:52:53 2014 +0000
description:
byte swap the insn on BE8 it's LE in memory but needs to be BE to decode.
diffstat:
sys/arch/arm/arm/disassem.c | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
diffs (28 lines):
diff -r 7650340337b8 -r a897f09a8227 sys/arch/arm/arm/disassem.c
--- a/sys/arch/arm/arm/disassem.c Fri Jan 10 20:38:11 2014 +0000
+++ b/sys/arch/arm/arm/disassem.c Fri Jan 10 23:52:53 2014 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: disassem.c,v 1.22 2013/08/18 16:08:02 matt Exp $ */
+/* $NetBSD: disassem.c,v 1.23 2014/01/10 23:52:53 matt Exp $ */
/*
* Copyright (c) 1996 Mark Brinicombe.
@@ -49,7 +49,7 @@
#include <sys/param.h>
-__KERNEL_RCSID(0, "$NetBSD: disassem.c,v 1.22 2013/08/18 16:08:02 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: disassem.c,v 1.23 2014/01/10 23:52:53 matt Exp $");
#include <sys/systm.h>
@@ -324,6 +324,9 @@
fmt = 0;
matchp = 0;
insn = di->di_readword(loc);
+#if defined(__ARMEB__) && defined(CPU_ARMV7)
+ insn = bswap32(insn);
+#endif
char neonfmt = 'd';
char neonsign = 'u';
Home |
Main Index |
Thread Index |
Old Index