From 31927af6c7cdfafde7243584166b49ca2968a32d Mon Sep 17 00:00:00 2001 From: Andrew Pinski Date: Thu, 16 Feb 2017 16:27:42 +0000 Subject: [PATCH] value-unwind.h: New file. * config/aarch64/value-unwind.h: New file. * config.host (aarch64*-*-*): Add aarch64/value-unwind.h to tm_file. From-SVN: r245508 --- libgcc/ChangeLog | 6 ++++++ libgcc/config.host | 4 ++++ libgcc/config/aarch64/value-unwind.h | 25 +++++++++++++++++++++++++ 3 files changed, 35 insertions(+) create mode 100644 libgcc/config/aarch64/value-unwind.h diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 5aa0dab91cd..906cbd59119 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,9 @@ +2017-02-16 Andrew Pinski + + * config/aarch64/value-unwind.h: New file. + * config.host (aarch64*-*-*): Add aarch64/value-unwind.h + to tm_file. + 2017-02-06 Palmer Dabbelt * config.host: Add RISC-V tuples. diff --git a/libgcc/config.host b/libgcc/config.host index 9472a60886c..8bab369561f 100644 --- a/libgcc/config.host +++ b/libgcc/config.host @@ -1379,4 +1379,8 @@ i[34567]86-*-linux* | x86_64-*-linux*) fi tm_file="${tm_file} i386/value-unwind.h" ;; +aarch64*-*-*) + # ILP32 needs an extra header for unwinding + tm_file="${tm_file} aarch64/value-unwind.h" + ;; esac diff --git a/libgcc/config/aarch64/value-unwind.h b/libgcc/config/aarch64/value-unwind.h new file mode 100644 index 00000000000..c79e832144f --- /dev/null +++ b/libgcc/config/aarch64/value-unwind.h @@ -0,0 +1,25 @@ +/* Store register values as _Unwind_Word type in DWARF2 EH unwind context. + 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. + + 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 + . */ + +/* Define this macro if the target stores register values as _Unwind_Word + type in unwind context. Only enable it for ilp32. */ +#if defined __aarch64__ && !defined __LP64__ +# define REG_VALUE_IN_UNWIND_CONTEXT +#endif -- 2.30.2