From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1643) id 5CE973858D20; Fri, 20 Jan 2023 20:58:46 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 5CE973858D20 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1674248326; bh=/h0ukVG3wQ5tPa5rJrbeUqnYwWrKG0d8rz8Udw45hGc=; h=From:To:Subject:Date:From; b=uY7CLQV1cd2I+mkZg+eBhVGgjnpGVEDX1CqIZQVoEtzs8zJ1vQWiY0pxUQaXysaTF 0XXCaJnpWSIKcqJD+6egYm93Kun5WAGwpAw02HdHQXPOw2Yi2ohHrpLlc7w03F2Kmk etubIvrZ0BKAn1AyQ4/CkLOLmZDusZlQklcpO3AY= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Thomas Schwinge To: gcc-cvs@gcc.gnu.org Subject: [gcc/devel/omp/gcc-12] nvptx, libgcc: Stub unwinding implementation X-Act-Checkin: gcc X-Git-Author: Thomas Schwinge X-Git-Refname: refs/heads/devel/omp/gcc-12 X-Git-Oldrev: 689a5340c7e4286b451f1bc600342550c7c94da2 X-Git-Newrev: 26d3146736218ccaaaafdaba4da1edf969bc190d Message-Id: <20230120205846.5CE973858D20@sourceware.org> Date: Fri, 20 Jan 2023 20:58:46 +0000 (GMT) List-Id: https://gcc.gnu.org/g:26d3146736218ccaaaafdaba4da1edf969bc190d commit 26d3146736218ccaaaafdaba4da1edf969bc190d Author: Thomas Schwinge Date: Wed Sep 21 18:58:34 2022 +0200 nvptx, libgcc: Stub unwinding implementation Adding stub '_Unwind_Backtrace', '_Unwind_GetIPInfo' functions is necessary for linking libbacktrace, as a normal (non-'LIBGFOR_MINIMAL') configuration of libgfortran wants to do, for example. The file 'libgcc/config/nvptx/unwind-nvptx.c' is copied from 'libgcc/config/gcn/unwind-gcn.c'. libgcc/ChangeLog: * config/nvptx/t-nvptx: Add unwind-nvptx.c. * config/nvptx/unwind-nvptx.c: New file. Co-authored-by: Andrew Stubbs Diff: --- libgcc/ChangeLog.omp | 6 ++++++ libgcc/config/nvptx/t-nvptx | 3 ++- libgcc/config/nvptx/unwind-nvptx.c | 36 ++++++++++++++++++++++++++++++++++++ 3 files changed, 44 insertions(+), 1 deletion(-) diff --git a/libgcc/ChangeLog.omp b/libgcc/ChangeLog.omp index 2e7bf5cc029..c46f49bf5b7 100644 --- a/libgcc/ChangeLog.omp +++ b/libgcc/ChangeLog.omp @@ -1,3 +1,9 @@ +2023-01-20 Thomas Schwinge + Andrew Stubbs + + * config/nvptx/t-nvptx: Add unwind-nvptx.c. + * config/nvptx/unwind-nvptx.c: New file. + 2023-01-20 Thomas Schwinge * config/nvptx/crtstuff.c ["mgomp"] diff --git a/libgcc/config/nvptx/t-nvptx b/libgcc/config/nvptx/t-nvptx index 9a0454c3a4d..1845a38a35e 100644 --- a/libgcc/config/nvptx/t-nvptx +++ b/libgcc/config/nvptx/t-nvptx @@ -1,6 +1,7 @@ LIB2ADD=$(srcdir)/config/nvptx/reduction.c \ $(srcdir)/config/nvptx/mgomp.c \ - $(srcdir)/config/nvptx/atomic.c + $(srcdir)/config/nvptx/atomic.c \ + $(srcdir)/config/nvptx/unwind-nvptx.c LIB2ADDEH= LIB2FUNCS_EXCLUDE= diff --git a/libgcc/config/nvptx/unwind-nvptx.c b/libgcc/config/nvptx/unwind-nvptx.c new file mode 100644 index 00000000000..c657b2af6f3 --- /dev/null +++ b/libgcc/config/nvptx/unwind-nvptx.c @@ -0,0 +1,36 @@ +/* Stub unwinding implementation. + + Copyright (C) 2019-2023 Free Software Foundation, Inc. + + This file 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. + + This file 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 + . */ + +#include "unwind.h" + +_Unwind_Reason_Code +_Unwind_Backtrace(_Unwind_Trace_Fn trace, void * trace_argument) +{ + return 0; +} + +_Unwind_Ptr +_Unwind_GetIPInfo (struct _Unwind_Context *c, int *ip_before_insn) +{ + return 0; +}