Commit 1f9e09b5 by Sebastian Huber Committed by Palmer Dabbelt

Add RTEMS support

gcc/ChangeLog

2017-07-27  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* config.gcc (riscv*-*-elf*): Add (riscv*-*-rtems*).
	* config/riscv/rtems.h: New file.

From-SVN: r250632
parent 2c2789d5
2017-07-27 Sebastian Huber <sebastian.huber@embedded-brains.de>
* config.gcc (riscv*-*-elf*): Add (riscv*-*-rtems*).
* config/riscv/rtems.h: New file.
2017-07-27 Kyrylo Tkachov <kyrylo.tkachov@arm.com> 2017-07-27 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
Sudakshina Das <sudi.das@arm.com> Sudakshina Das <sudi.das@arm.com>
......
...@@ -2040,7 +2040,7 @@ riscv*-*-linux*) ...@@ -2040,7 +2040,7 @@ riscv*-*-linux*)
# automatically detect that GAS supports it, yet we require it. # automatically detect that GAS supports it, yet we require it.
gcc_cv_initfini_array=yes gcc_cv_initfini_array=yes
;; ;;
riscv*-*-elf*) riscv*-*-elf* | riscv*-*-rtems*)
tm_file="elfos.h newlib-stdint.h ${tm_file} riscv/elf.h" tm_file="elfos.h newlib-stdint.h ${tm_file} riscv/elf.h"
case "x${enable_multilib}" in case "x${enable_multilib}" in
xno) ;; xno) ;;
...@@ -2053,6 +2053,11 @@ riscv*-*-elf*) ...@@ -2053,6 +2053,11 @@ riscv*-*-elf*)
# Force .init_array support. The configure script cannot always # Force .init_array support. The configure script cannot always
# automatically detect that GAS supports it, yet we require it. # automatically detect that GAS supports it, yet we require it.
gcc_cv_initfini_array=yes gcc_cv_initfini_array=yes
case ${target} in
riscv*-*-rtems*)
tm_file="${tm_file} rtems.h riscv/rtems.h"
;;
esac
;; ;;
mips*-*-netbsd*) # NetBSD/mips, either endian. mips*-*-netbsd*) # NetBSD/mips, either endian.
target_cpu_default="MASK_ABICALLS" target_cpu_default="MASK_ABICALLS"
......
/* Definitions for RISC-V RTEMS systems with ELF format.
Copyright (C) 2017 Free Software Foundation, Inc.
This file is part of GCC.
GCC 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.
GCC 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.
Under Section 7 of GPL version 3, you are granted additional
permissions described in the GCC Runtime Library Exception, version
3.1, as published by the Free Software Foundation.
You should have received a copy of the GNU General Public License and
a copy of the GCC Runtime Library Exception along with this program;
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */
#undef TARGET_OS_CPP_BUILTINS
#define TARGET_OS_CPP_BUILTINS() \
do { \
builtin_define ("__rtems__"); \
builtin_define ("__USE_INIT_FINI__"); \
builtin_assert ("system=rtems"); \
} while (0)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment