* [PATCH 3/3] contrib/config-list.mk: Add aarch64-rtems and x86_64-rtems
2016-02-25 20:49 [PATCH 1/3] Add aarch64-*-rtems* target Joel Sherrill
2016-02-25 20:49 ` [PATCH 2/3] Add x86_64-*-rtems* target Joel Sherrill
@ 2016-02-25 20:49 ` Joel Sherrill
2016-02-26 16:11 ` James Greenhalgh
2016-02-26 16:10 ` [PATCH 1/3] Add aarch64-*-rtems* target James Greenhalgh
2 siblings, 1 reply; 5+ messages in thread
From: Joel Sherrill @ 2016-02-25 20:49 UTC (permalink / raw)
To: gcc-patches; +Cc: Joel Sherrill
* contrib/config-list.mk: Add aarch64-rtems and x86_64-rtems
---
contrib/config-list.mk | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/contrib/config-list.mk b/contrib/config-list.mk
index 0f15464..6a83a84 100644
--- a/contrib/config-list.mk
+++ b/contrib/config-list.mk
@@ -11,7 +11,7 @@ TEST=all-gcc
# nohup nice make -j25 -l36 -f ../gcc/contrib/config-list.mk > make.out 2>&1 &
#
# v850e1-elf is rejected by config.sub
-LIST = aarch64-elf aarch64-linux-gnu \
+LIST = aarch64-elf aarch64-linux-gnu aarch64-rtems \
alpha-linux-gnu alpha-freebsd6 alpha-netbsd alpha-openbsd \
alpha64-dec-vms alpha-dec-vms am33_2.0-linux \
arc-elf32OPT-with-cpu=arc600 arc-elf32OPT-with-cpu=arc700 \
@@ -76,7 +76,8 @@ LIST = aarch64-elf aarch64-linux-gnu \
x86_64-pc-linux-gnuOPT-with-fpmath=avx \
x86_64-elfOPT-with-fpmath=sse x86_64-freebsd6 x86_64-netbsd \
x86_64-knetbsd-gnuOPT-enable-obsolete x86_64-w64-mingw32 \
- x86_64-mingw32OPT-enable-sjlj-exceptions=yes xstormy16-elf xtensa-elf \
+ x86_64-mingw32OPT-enable-sjlj-exceptions=yes x86_64-rtems \
+ xstormy16-elf xtensa-elf \
xtensa-linux \
i686-interix3OPT-enable-obsolete
--
1.8.3.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/3] Add aarch64-*-rtems* target
@ 2016-02-25 20:49 Joel Sherrill
2016-02-25 20:49 ` [PATCH 2/3] Add x86_64-*-rtems* target Joel Sherrill
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Joel Sherrill @ 2016-02-25 20:49 UTC (permalink / raw)
To: gcc-patches; +Cc: Joel Sherrill
* gcc/config.gcc, libgcc/config.host: Add aarch64-*-rtems*.
* gcc/config/aarch64/rtems.h: New file.
---
gcc/config.gcc | 11 +++++++++--
gcc/config/aarch64/rtems.h | 28 ++++++++++++++++++++++++++++
libgcc/config.host | 2 +-
3 files changed, 38 insertions(+), 3 deletions(-)
create mode 100644 gcc/config/aarch64/rtems.h
diff --git a/gcc/config.gcc b/gcc/config.gcc
index e26742e..3b280e0 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -906,11 +906,18 @@ case ${target} in
esac
case ${target} in
-aarch64*-*-elf)
+aarch64*-*-elf | aarch64*-*-rtems*)
tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h"
tm_file="${tm_file} aarch64/aarch64-elf.h aarch64/aarch64-elf-raw.h"
tmake_file="${tmake_file} aarch64/t-aarch64"
- use_gcc_stdint=wrap
+ case $target in
+ aarch64-*-elf*)
+ use_gcc_stdint=wrap
+ ;;
+ aarch64-*-rtems*)
+ tm_file="${tm_file} rtems.h aarch64/rtems.h"
+ ;;
+ esac
case $target in
aarch64_be-*)
tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1"
diff --git a/gcc/config/aarch64/rtems.h b/gcc/config/aarch64/rtems.h
new file mode 100644
index 0000000..a166034
--- /dev/null
+++ b/gcc/config/aarch64/rtems.h
@@ -0,0 +1,28 @@
+/* Definitions for RTEMS based AARCH64 system.
+ Copyright (C) 2016 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.
+
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+
+#define HAS_INIT_SECTION
+
+#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)
diff --git a/libgcc/config.host b/libgcc/config.host
index ef7dfd0..1f85c46 100644
--- a/libgcc/config.host
+++ b/libgcc/config.host
@@ -327,7 +327,7 @@ i[34567]86-*-mingw* | x86_64-*-mingw*)
esac
case ${host} in
-aarch64*-*-elf)
+aarch64*-*-elf | aarch64*-*-rtems*)
extra_parts="$extra_parts crtbegin.o crtend.o crti.o crtn.o"
extra_parts="$extra_parts crtfastmath.o"
tmake_file="${tmake_file} ${cpu_type}/t-aarch64"
--
1.8.3.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 2/3] Add x86_64-*-rtems* target
2016-02-25 20:49 [PATCH 1/3] Add aarch64-*-rtems* target Joel Sherrill
@ 2016-02-25 20:49 ` Joel Sherrill
2016-02-25 20:49 ` [PATCH 3/3] contrib/config-list.mk: Add aarch64-rtems and x86_64-rtems Joel Sherrill
2016-02-26 16:10 ` [PATCH 1/3] Add aarch64-*-rtems* target James Greenhalgh
2 siblings, 0 replies; 5+ messages in thread
From: Joel Sherrill @ 2016-02-25 20:49 UTC (permalink / raw)
To: gcc-patches; +Cc: Joel Sherrill
* gcc/config.gcc, libgcc/config.host: Add x86_64-*-rtems*.
* gcc/config/i386/rtems-64.h: New file.
---
gcc/config.gcc | 3 +++
gcc/config/i386/rtems-64.h | 30 ++++++++++++++++++++++++++++++
libgcc/config.host | 2 +-
3 files changed, 34 insertions(+), 1 deletion(-)
create mode 100644 gcc/config/i386/rtems-64.h
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 3b280e0..4cc6438 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1421,6 +1421,9 @@ i[34567]86-*-elf*)
x86_64-*-elf*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h i386/x86-64.h"
;;
+x86_64-*-rtems*)
+ tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h i386/x86-64.h i386/rtems-64.h"
+ ;;
i[34567]86-*-rdos*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h i386/rdos.h"
;;
diff --git a/gcc/config/i386/rtems-64.h b/gcc/config/i386/rtems-64.h
new file mode 100644
index 0000000..b087d44
--- /dev/null
+++ b/gcc/config/i386/rtems-64.h
@@ -0,0 +1,30 @@
+/* Definitions for rtems targeting an x86_64
+ Copyright (C) 2016 Free Software Foundation, Inc.
+ Contributed by Joel Sherrill (joel@OARcorp.com).
+
+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.
+
+You should have received a copy of the GNU General Public License
+along with GCC; see the file COPYING3. If not see
+<http://www.gnu.org/licenses/>. */
+
+/* Specify predefined symbols in preprocessor. */
+
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define ("__rtems__"); \
+ builtin_define ("__USE_INIT_FINI__"); \
+ builtin_assert ("system=rtems"); \
+ } \
+ while (0)
diff --git a/libgcc/config.host b/libgcc/config.host
index 1f85c46..b61a579 100644
--- a/libgcc/config.host
+++ b/libgcc/config.host
@@ -577,7 +577,7 @@ i[34567]86-*-elfiamcu)
i[34567]86-*-elf*)
tmake_file="$tmake_file i386/t-crtstuff t-crtstuff-pic t-libgcc-pic"
;;
-x86_64-*-elf*)
+x86_64-*-elf* | x86_64-*-rtems*)
tmake_file="$tmake_file i386/t-crtstuff t-crtstuff-pic t-libgcc-pic"
;;
i[34567]86-*-dragonfly*)
--
1.8.3.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/3] Add aarch64-*-rtems* target
2016-02-25 20:49 [PATCH 1/3] Add aarch64-*-rtems* target Joel Sherrill
2016-02-25 20:49 ` [PATCH 2/3] Add x86_64-*-rtems* target Joel Sherrill
2016-02-25 20:49 ` [PATCH 3/3] contrib/config-list.mk: Add aarch64-rtems and x86_64-rtems Joel Sherrill
@ 2016-02-26 16:10 ` James Greenhalgh
2 siblings, 0 replies; 5+ messages in thread
From: James Greenhalgh @ 2016-02-26 16:10 UTC (permalink / raw)
To: Joel Sherrill; +Cc: gcc-patches
On Thu, Feb 25, 2016 at 02:49:08PM -0600, Joel Sherrill wrote:
> * gcc/config.gcc, libgcc/config.host: Add aarch64-*-rtems*.
> * gcc/config/aarch64/rtems.h: New file.
OK.
Thanks,
James
> ---
> gcc/config.gcc | 11 +++++++++--
> gcc/config/aarch64/rtems.h | 28 ++++++++++++++++++++++++++++
> libgcc/config.host | 2 +-
> 3 files changed, 38 insertions(+), 3 deletions(-)
> create mode 100644 gcc/config/aarch64/rtems.h
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 3/3] contrib/config-list.mk: Add aarch64-rtems and x86_64-rtems
2016-02-25 20:49 ` [PATCH 3/3] contrib/config-list.mk: Add aarch64-rtems and x86_64-rtems Joel Sherrill
@ 2016-02-26 16:11 ` James Greenhalgh
0 siblings, 0 replies; 5+ messages in thread
From: James Greenhalgh @ 2016-02-26 16:11 UTC (permalink / raw)
To: Joel Sherrill; +Cc: gcc-patches
On Thu, Feb 25, 2016 at 02:49:10PM -0600, Joel Sherrill wrote:
> * contrib/config-list.mk: Add aarch64-rtems and x86_64-rtems
The AArch64 part of this is OK.
Thanks,
James
> ---
> contrib/config-list.mk | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2016-02-26 16:11 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-02-25 20:49 [PATCH 1/3] Add aarch64-*-rtems* target Joel Sherrill
2016-02-25 20:49 ` [PATCH 2/3] Add x86_64-*-rtems* target Joel Sherrill
2016-02-25 20:49 ` [PATCH 3/3] contrib/config-list.mk: Add aarch64-rtems and x86_64-rtems Joel Sherrill
2016-02-26 16:11 ` James Greenhalgh
2016-02-26 16:10 ` [PATCH 1/3] Add aarch64-*-rtems* target James Greenhalgh
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).