mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-25 04:49:54 +08:00
* ieee-float.h: Moved from ../gdb.
* dis-asm.h: New file. Interface to dis-assembler.
This commit is contained in:
@ -33,12 +33,14 @@ bfd.h
|
|||||||
bout.h
|
bout.h
|
||||||
coff
|
coff
|
||||||
demangle.h
|
demangle.h
|
||||||
|
dis-asm.h
|
||||||
elf
|
elf
|
||||||
fopen-bin.h
|
fopen-bin.h
|
||||||
fopen-same.h
|
fopen-same.h
|
||||||
gdbm.h
|
gdbm.h
|
||||||
getopt.h
|
getopt.h
|
||||||
ieee.h
|
ieee.h
|
||||||
|
ieee-float.h
|
||||||
oasys.h
|
oasys.h
|
||||||
obstack.h
|
obstack.h
|
||||||
opcode
|
opcode
|
||||||
|
@ -1,3 +1,8 @@
|
|||||||
|
Thu Mar 18 13:49:09 1993 Per Bothner (bothner@rtl.cygnus.com)
|
||||||
|
|
||||||
|
* ieee-float.h: Moved from ../gdb.
|
||||||
|
* dis-asm.h: New file. Interface to dis-assembler.
|
||||||
|
|
||||||
Thu Mar 11 10:52:57 1993 Fred Fish (fnf@cygnus.com)
|
Thu Mar 11 10:52:57 1993 Fred Fish (fnf@cygnus.com)
|
||||||
|
|
||||||
* demangle.h (DMGL_NO_OPTS): Add define (set to 0) to use
|
* demangle.h (DMGL_NO_OPTS): Add define (set to 0) to use
|
||||||
|
32
include/dis-asm.h
Normal file
32
include/dis-asm.h
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
#include <stdio.h>
|
||||||
|
#include "ansidecl.h"
|
||||||
|
#include "bfd.h"
|
||||||
|
|
||||||
|
typedef int (*fprintf_ftype) PARAMS((FILE*, const char*, ...));
|
||||||
|
|
||||||
|
typedef struct disassemble_info {
|
||||||
|
fprintf_ftype fprintf_func;
|
||||||
|
FILE *stream;
|
||||||
|
int flags;
|
||||||
|
} disassemble_info;
|
||||||
|
|
||||||
|
typedef int (*disassembler_ftype)
|
||||||
|
PARAMS((bfd_vma, bfd_byte *, disassemble_info *));
|
||||||
|
|
||||||
|
#define INIT_DISASSEMBLE_INFO(INFO, STREAM) \
|
||||||
|
INFO.fprintf_func = (fprintf_ftype)fprintf, \
|
||||||
|
INFO.stream = (STREAM)
|
||||||
|
|
||||||
|
#define GDB_INIT_DISASSEMBLE_INFO(INFO, STREAM) \
|
||||||
|
INFO.fprintf_func = (fprintf_ftype)fprintf_filtered, \
|
||||||
|
INFO.stream = (STREAM)
|
||||||
|
|
||||||
|
/* Standard dis-assemblers. */
|
||||||
|
|
||||||
|
extern int print_insn_big_mips PARAMS ((bfd_vma, bfd_byte*,disassemble_info*));
|
||||||
|
extern int print_insn_little_mips
|
||||||
|
PARAMS ((bfd_vma,bfd_byte*,disassemble_info*));
|
||||||
|
extern int print_insn_i386 PARAMS ((bfd_vma,bfd_byte*,disassemble_info*));
|
||||||
|
extern int print_insn_m68k PARAMS ((bfd_vma,bfd_byte*,disassemble_info*));
|
||||||
|
extern int print_insn_z8001 PARAMS ((bfd_vma,bfd_byte*,disassemble_info*));
|
||||||
|
extern int print_insn_z8002 PARAMS ((bfd_vma,bfd_byte*,disassemble_info*));
|
65
include/ieee-float.h
Normal file
65
include/ieee-float.h
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
/* IEEE floating point support declarations, for GDB, the GNU Debugger.
|
||||||
|
Copyright (C) 1991 Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
This file is part of GDB.
|
||||||
|
|
||||||
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
||||||
|
|
||||||
|
#if !defined (IEEE_FLOAT_H)
|
||||||
|
#define IEEE_FLOAT_H 1
|
||||||
|
|
||||||
|
#include "ansidecl.h"
|
||||||
|
|
||||||
|
/* Parameters for extended float format: */
|
||||||
|
|
||||||
|
struct ext_format {
|
||||||
|
unsigned totalsize; /* Total size of extended number */
|
||||||
|
unsigned signbyte; /* Byte number of sign bit */
|
||||||
|
unsigned char signmask; /* Mask for sign bit */
|
||||||
|
unsigned expbyte_h; /* High byte of exponent */
|
||||||
|
unsigned expbyte_l; /* Low byte of exponent */
|
||||||
|
unsigned manbyte_h; /* High byte of mantissa */
|
||||||
|
unsigned manbyte_l; /* Low byte of mantissa */
|
||||||
|
};
|
||||||
|
|
||||||
|
#define TOTALSIZE ext_format->totalsize
|
||||||
|
#define SIGNBYTE ext_format->signbyte
|
||||||
|
#define SIGNMASK ext_format->signmask
|
||||||
|
#define EXPBYTE_H ext_format->expbyte_h
|
||||||
|
#define EXPBYTE_L ext_format->expbyte_l
|
||||||
|
#define MANBYTE_H ext_format->manbyte_h
|
||||||
|
#define MANBYTE_L ext_format->manbyte_l
|
||||||
|
|
||||||
|
/* Actual ext_format structs for various machines are in the *-tdep.c file
|
||||||
|
for each machine. */
|
||||||
|
|
||||||
|
#define EXT_EXP_NAN 0x7FFF /* Exponent value that indicates NaN */
|
||||||
|
#define EXT_EXP_BIAS 0x3FFF /* Amount added to "true" exponent for ext */
|
||||||
|
#define DBL_EXP_BIAS 0x3FF /* Ditto, for doubles */
|
||||||
|
|
||||||
|
/* Convert an IEEE extended float to a double.
|
||||||
|
FROM is the address of the extended float.
|
||||||
|
Store the double in *TO. */
|
||||||
|
|
||||||
|
extern void
|
||||||
|
ieee_extended_to_double PARAMS ((const struct ext_format *, char *, double *));
|
||||||
|
|
||||||
|
/* The converse: convert the double *FROM to an extended float
|
||||||
|
and store where TO points. */
|
||||||
|
|
||||||
|
extern void
|
||||||
|
double_to_ieee_extended PARAMS ((const struct ext_format *, double *, char *));
|
||||||
|
|
||||||
|
#endif /* defined (IEEE_FLOAT_H) */
|
Reference in New Issue
Block a user