diff options
author | Nick Clifton <nickc@redhat.com> | 2014-08-19 15:51:43 +0100 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2014-08-19 15:51:43 +0100 |
commit | f7f2534e71f51f11f9f00f6365d5d8f37e6df054 (patch) | |
tree | 466900f55a6612609d1bc55d2873aa727cb0b077 /gas | |
parent | 9ace48f3d7d80ce09c5df60cccb433470410b11b (diff) | |
download | gdb-f7f2534e71f51f11f9f00f6365d5d8f37e6df054.zip gdb-f7f2534e71f51f11f9f00f6365d5d8f37e6df054.tar.gz gdb-f7f2534e71f51f11f9f00f6365d5d8f37e6df054.tar.bz2 |
This patch adds support for FreeBSD ARM in gas.
Before FreeBSD-8 there was/is no arm support from the OS side.
FreeBSD-9.x added ARM support but only for the OABI.
From FreeBSD-10 upwards there is EABI support.
* Makefile.am: Add FreeBSD ARM support.
* Mafefile.in: Regenerate.
* configure.tgt: Add FreeBSD ARM support.
* config/te-armfbsdeabi.h: New file.
* config/te-armfbsdvfp.h: Likewise.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 8 | ||||
-rw-r--r-- | gas/Makefile.am | 2 | ||||
-rw-r--r-- | gas/Makefile.in | 2 | ||||
-rw-r--r-- | gas/config/te-armfbsdeabi.h | 22 | ||||
-rw-r--r-- | gas/config/te-armfbsdvfp.h | 22 | ||||
-rw-r--r-- | gas/configure.tgt | 4 |
6 files changed, 60 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index e1fbf8e..4e1bb78 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,11 @@ +2014-08-19 Andreas Tobler <andreast@fgznet.ch> + + * Makefile.am: Add FreeBSD ARM support. + * Mafefile.in: Regenerate. + * configure.tgt: Add FreeBSD ARM support. + * config/te-armfbsdeabi.h: New file. + * config/te-armfbsdvfp.h: Likewise. + 2014-08-19 Alan Modra <amodra@gmail.com> * configure: Regenerate. diff --git a/gas/Makefile.am b/gas/Makefile.am index 5727c75..972d379 100644 --- a/gas/Makefile.am +++ b/gas/Makefile.am @@ -296,6 +296,8 @@ TARG_ENV_HFILES = \ config/te-386bsd.h \ config/te-aix5.h \ config/te-armeabi.h \ + config/te-armfbsddeabi.h \ + config/te-armfbsdvfp.h \ config/te-armlinuxeabi.h \ config/te-dynix.h \ config/te-epoc-pe.h \ diff --git a/gas/Makefile.in b/gas/Makefile.in index be2711b..f42df83 100644 --- a/gas/Makefile.in +++ b/gas/Makefile.in @@ -565,6 +565,8 @@ TARG_ENV_HFILES = \ config/te-386bsd.h \ config/te-aix5.h \ config/te-armeabi.h \ + config/te-armfbsddeabi.h \ + config/te-armfbsdvfp.h \ config/te-armlinuxeabi.h \ config/te-dynix.h \ config/te-epoc-pe.h \ diff --git a/gas/config/te-armfbsdeabi.h b/gas/config/te-armfbsdeabi.h new file mode 100644 index 0000000..8a72e21 --- /dev/null +++ b/gas/config/te-armfbsdeabi.h @@ -0,0 +1,22 @@ +/* Copyright (C) 2004-2014 Free Software Foundation, Inc. + + This file is part of GAS, the GNU Assembler. + + GAS 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, + or (at your option) any later version. + + GAS 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 GAS; see the file COPYING. If not, write to the Free + Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA + 02110-1301, USA. */ + +#include "te-freebsd.h" + +#define EABI_DEFAULT EF_ARM_EABI_VER5 diff --git a/gas/config/te-armfbsdvfp.h b/gas/config/te-armfbsdvfp.h new file mode 100644 index 0000000..945ac7c --- /dev/null +++ b/gas/config/te-armfbsdvfp.h @@ -0,0 +1,22 @@ +/* Copyright (C) 2004-2014 Free Software Foundation, Inc. + + This file is part of GAS, the GNU Assembler. + + GAS 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, + or (at your option) any later version. + + GAS 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 GAS; see the file COPYING. If not, write to the Free + Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA + 02110-1301, USA. */ + +#include "te-armfbsdeabi.h" + +#define FPU_DEFAULT FPU_ARCH_VFP diff --git a/gas/configure.tgt b/gas/configure.tgt index 9319d33..4b78908 100644 --- a/gas/configure.tgt +++ b/gas/configure.tgt @@ -138,6 +138,10 @@ case ${generic_target} in arm-*-symbianelf*) fmt=elf em=symbian ;; arm-*-kaos*) fmt=elf ;; arm-*-conix*) fmt=elf ;; + arm-*-freebsd[89].* | armeb-*-freebsd[89].*) + fmt=elf em=freebsd ;; + arm-*-freebsd* | armeb-*-freebsd*) fmt=elf em=armfbsdeabi ;; + arm*-*-freebsd*) fmt=elf em=armfbsdvfp ;; arm-*-linux*aout*) fmt=aout em=linux ;; arm-*-linux-*eabi*) fmt=elf em=armlinuxeabi ;; arm-*-linux-*) fmt=elf em=linux ;; |