aboutsummaryrefslogtreecommitdiff
path: root/gdb/m68k-pinsn.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/m68k-pinsn.c')
-rw-r--r--gdb/m68k-pinsn.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/gdb/m68k-pinsn.c b/gdb/m68k-pinsn.c
index 5b59ee1..94ac7f7 100644
--- a/gdb/m68k-pinsn.c
+++ b/gdb/m68k-pinsn.c
@@ -23,7 +23,7 @@ anyone else from sharing it farther. Help stamp out software hoarding!
#include "defs.h"
#include "param.h"
#include "symtab.h"
-#include "m68k-opcode.h"
+#include "opcode.h"
/* 68k instructions are never longer than this many bytes. */
#define MAXLEN 22
@@ -714,6 +714,12 @@ convert_from_68881 (from, to)
char *from;
double *to;
{
+#ifdef HPUX_ASM
+ asm ("mov.l 8(%a6),%a0");
+ asm ("mov.l 12(%a6),%a1");
+ asm ("fmove.x (%a0),%fp0");
+ asm ("fmove.d %fp0,(%a1)");
+#else /* not HPUX_ASM */
#if 0
asm ("movl a6@(8),a0");
asm ("movl a6@(12),a1");
@@ -729,6 +735,7 @@ convert_from_68881 (from, to)
asm (".long 0xf2104800");
asm (".long 0xf2117400");
#endif
+#endif /* not HPUX_ASM */
}
/* The converse: convert the double *FROM to an extended float
@@ -738,6 +745,12 @@ convert_to_68881 (from, to)
double *from;
char *to;
{
+#ifdef HPUX_ASM
+ asm ("mov.l 8(%a6),%a0");
+ asm ("mov.l 12(%a6),%a1");
+ asm ("fmove.d (%a0),%fp0");
+ asm ("fmove.x %fp0,(%a1)");
+#else /* not HPUX_ASM */
#if 0
asm ("movl a6@(8),a0");
asm ("movl a6@(12),a1");
@@ -752,4 +765,5 @@ convert_to_68881 (from, to)
asm (".long 0xf2105400");
asm (".long 0xf2116800");
#endif
+#endif /* not HPUX_ASM */
}