Add LM32 port.

This commit is contained in:
Nick Clifton 2008-12-23 19:10:21 +00:00
parent 9a8597c13a
commit 2f6f0bbeae
4 changed files with 65 additions and 0 deletions

View File

@ -1,3 +1,7 @@
2008-12-23 Jon Beniston <jon@beniston.com>
* dis-asm.h: Add LM32 disassembler function prototype.
2008-12-10 Jason Merrill <jason@redhat.com>
* demangle.h (enum demangle_component_type): Add

View File

@ -245,6 +245,7 @@ extern int print_insn_little_mips (bfd_vma, disassemble_info *);
extern int print_insn_little_or32 (bfd_vma, disassemble_info *);
extern int print_insn_little_powerpc (bfd_vma, disassemble_info *);
extern int print_insn_little_score (bfd_vma, disassemble_info *);
extern int print_insn_lm32 (bfd_vma, disassemble_info *);
extern int print_insn_m32c (bfd_vma, disassemble_info *);
extern int print_insn_m32r (bfd_vma, disassemble_info *);
extern int print_insn_m68hc11 (bfd_vma, disassemble_info *);

View File

@ -1,3 +1,7 @@
2008-12-23 Jon Beniston <jon@beniston.com>
* lm32.h: New file.
2008-12-23 Nick Clifton <nickc@redhat.com>
* commmon.h (STT_IFUNC): Delete.

56
include/elf/lm32.h Normal file
View File

@ -0,0 +1,56 @@
/* Lattice Mico32 ELF support for BFD.
Copyright 2008 Free Software Foundation, Inc.
Contributed by Jon Beniston <jon@beniston.com>
This file is part of BFD, the Binary File Descriptor library.
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 3 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.,
51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */
#ifndef _ELF_LM32_H
#define _ELF_LM32_H
#include "elf/reloc-macros.h"
/* Relocations. */
START_RELOC_NUMBERS (elf_lm32_reloc_type)
RELOC_NUMBER (R_LM32_NONE, 0)
RELOC_NUMBER (R_LM32_8, 1)
RELOC_NUMBER (R_LM32_16, 2)
RELOC_NUMBER (R_LM32_32, 3)
RELOC_NUMBER (R_LM32_HI16, 4)
RELOC_NUMBER (R_LM32_LO16, 5)
RELOC_NUMBER (R_LM32_GPREL16, 6)
RELOC_NUMBER (R_LM32_CALL, 7)
RELOC_NUMBER (R_LM32_BRANCH, 8)
RELOC_NUMBER (R_LM32_GNU_VTINHERIT, 9)
RELOC_NUMBER (R_LM32_GNU_VTENTRY, 10)
RELOC_NUMBER (R_LM32_16_GOT, 11)
RELOC_NUMBER (R_LM32_GOTOFF_HI16, 12)
RELOC_NUMBER (R_LM32_GOTOFF_LO16, 13)
RELOC_NUMBER (R_LM32_COPY, 14)
RELOC_NUMBER (R_LM32_GLOB_DAT, 15)
RELOC_NUMBER (R_LM32_JMP_SLOT, 16)
RELOC_NUMBER (R_LM32_RELATIVE, 17)
END_RELOC_NUMBERS (R_LM32_max)
/* Processor specific flags for the ELF header e_flags field. */
#define EF_LM32_MACH 0x00000001
/* Various CPU types. */
#define E_LM32_MACH 0x1
#endif /* _ELF_LM32_H */