From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id iYUQD5OBqmpPNxIAWB0awg (envelope-from ) for ; Wed, 16 Sep 2026 07:46:27 -0400 Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20251104 header.b=ApkIHBpd; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 340C61E01F; Wed, 16 Sep 2026 07:46:27 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-5.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham autolearn_force=no version=4.0.1 Received: from vm01.sourceware.org (vm01.sourceware.org [IPv6:2620:52:6:3111::32]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 4C4721E01F for ; Wed, 16 Sep 2026 07:46:26 -0400 (EDT) Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id B37924BA79BA for ; Wed, 16 Sep 2026 11:46:24 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B37924BA79BA Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20251104 header.b=ApkIHBpd Received: from mail-pj1-x1030.google.com (mail-pj1-x1030.google.com [IPv6:2607:f8b0:4864:20::1030]) by sourceware.org (Postfix) with ESMTPS id 857C64BA79A8 for ; Wed, 16 Sep 2026 11:45:54 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 857C64BA79A8 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 857C64BA79A8 Authentication-Results: sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::1030 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1789559154; cv=none; b=VIhXam97qnl0CpnkLsQabW8SiR6Ycu+LrgTrh4k/Yfv1NP4/PaYXp4u1X7QfaNDBXK1ytnsbw9YUTvC69JOU+SsZ374wUkFZeculecQq1LlTsTFSCJNki5TaK0yjxhi3+o50DoXfojHOPAGOtmu4FPId1WpCwtYRMnimqpsd394= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1789559154; c=relaxed/simple; bh=3IHAIuKkPvYejkiXopQfJzjK6pd5F7babxM1McVVIco=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=JKzUxEf8yMChGmQkCpymIXUvU1J56Kro/HBhbiSaow49DmxPhH5LJBNQWOY52bF0sJaGFa9nks4wPt1jUOC7g05zu6Rfvkl+01B/M7010uN1fVTF+viW6Y71MrXptWMlhefuRGg8pZGDZmyLkkHK30ybCqN4c8EmKB7OJmTyV04= ARC-Authentication-Results: i=1; sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20251104 header.b=ApkIHBpd DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 857C64BA79A8 Received: by mail-pj1-x1030.google.com with SMTP id 98e67ed59e1d1-398b1e63c49so1677635a91.0 for ; Wed, 16 Sep 2026 04:45:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1789559153; x=1790163953; darn=sourceware.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=7wq+ATLDSeVl8dcxtdwk3aXi9X3ob8/6b/6Y1qnea2o=; b=ApkIHBpdm143GHyHx0es39EN92dH+oTox6fzfwDm/8NElcoG/04ZOKxH5Po4ekI6vw zmnnbV7WbOJgS4wqt0x/RL6S+6dzdpwL0SShpjyZYYgmHBzEtQdtAyYmy/bKZVXMgu8f B7YgwZx/PIEb2/GWtMij3/5jkylPiUEN/H9aw3FFvZazFqaKJIyw3nysLDu1dG4iHYrp FYEgf+uYF1lEI322cnDrs6bL3Ho2B42yM+1RI5w4D2i98r5NpAHOAuCFXEb6yyi4kRun ZkjUzLQqu/VWLsrvHiz232krBaWi+R2hWP/qEyLXQkPbyl+ieIAOqSH7s5QdiK+kSBw2 0znA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1789559153; x=1790163953; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=7wq+ATLDSeVl8dcxtdwk3aXi9X3ob8/6b/6Y1qnea2o=; b=pUkrjXb2SlADCYxuM3DToeEA5gS0+G9s/O+p3TBQBzyVeqSSUaZSVEO0wApRa70HOR dE1osx50PMQTFPlceRspvn2c15BEjf9dWZOUOgRMgWke7BThVsOcEIe6YnJq1oHiR9KK pYGG8VTKptl7mxQOHV/gi3FfnfJq9JZQ8UR4VWtWtEroCoM6vtSvAwBTBrHJ3MC4mHm2 2YZUfSDNpFwTuff6Y+YGKxRg7+BjZ0AxGQ4LD1rFtg7uiNhUfbT1X5isS2BQdx72pdIO 3i+b07GvOYZFMdrcfI6pBhK4tfsM4SvZaSMeDjuDug8CTbsZswYxf3zXe4EgKd9p8MH2 ndtQ== X-Gm-Message-State: AFuF++nYIjMgvZGZVjjIAPXysuQ8hLXrP/0bKI7S6n4f4PPdd5nd5r2h gUj1+VObYsA17UISv7RTBNZXIQZvtRJWVL24QiDsyQYNk1tXhuJVvB8M X-Gm-Gg: AYBFou3+M2WVQ+oRrkd7lhkD4H548kSqWkNpEYp9yajRbOLFES9MbFAHuAe4syOiYQr q5k9LsiJqtUkYg5lhSxJBrQxXJnx9nAdnSyk7ogiMITL/lEcsBcuHo/gENyJyW2kRfjRUa8ary/ 2Ej5NKb59hyyL+oqCRY+SRxzHEsGvtUtDgR4wbUMqu9J9lgJYd9kbr506FOWUvuoiN9QbuKgyH2 iT+O1BssN1kTDHNMBJO28EaAVvGWvOZ1pR7p128xZySbJeemBdQpYsJFdNyIJP/nsw5KMv8UwCw sJsNo7xvlT68PLKwwBOo9FOyV1R37Gt7PM6on7dr5W85juhrmhtmbwdTJwsNOM2TJwqBAgM7332 vMfrBgSPrY4ch5ueatrUasg7+8RFeD64mAdJs4yDSDno+CpALmYUjar8Ga/BQFPtZwye/iThzPJ FLP6yTwMIk3cNWFYdnK/xS9DTWtIWLA7vEyXDKXmag3l5pGf+SFkKg5gKkoz42f0A7JqgfuyVpD 6ZkcMi2TJLuvceiwSzwBPCDIT5B X-Received: by 2002:a17:90b:33c8:b0:398:c6e1:dceb with SMTP id 98e67ed59e1d1-39dfe036433mr11706378a91.9.1789559153238; Wed, 16 Sep 2026 04:45:53 -0700 (PDT) Received: from localhost.localdomain ([122.171.19.232]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-14395d4a48fsm6156243c88.10.2026.09.16.04.45.50 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 16 Sep 2026 04:45:52 -0700 (PDT) From: Aditya Vidyadhar Kamath To: ulrich.weigand@de.ibm.com, simon.marchi@polymtl.ca, tom@tromey.com Cc: gdb-patches@sourceware.org, Aditya.Kamath1@ibm.com, sangamesh.swamy@in.ibm.com, Aditya Vidyadhar Kamath Subject: [PATCH 1/3] Remove stale pre-AIX-7.2 compatibility guards Date: Wed, 16 Sep 2026 17:15:20 +0530 Message-ID: <20260916114519.17472-2-akamath996@gmail.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org From: Aditya Vidyadhar Kamath GDB now requires AIX 7.2 as the minimum supported version and will support AIX 7.2 TL5, AIX 7.3 and upcoming AIX releases. Remove dead compatibility code that existed only for older releases. --- gdb/aix-thread.c | 67 ++++++++---------------------------------------- 1 file changed, 11 insertions(+), 56 deletions(-) diff --git a/gdb/aix-thread.c b/gdb/aix-thread.c index 5ac71d22237..aa14f8ff045 100644 --- a/gdb/aix-thread.c +++ b/gdb/aix-thread.c @@ -1,4 +1,4 @@ -/* Low level interface for debugging AIX 4.3+ pthreads. +/* Low level interface for debugging AIX 7.2+ pthreads. Copyright (C) 1999-2026 Free Software Foundation, Inc. Written by Nick Duffek . @@ -19,7 +19,7 @@ along with this program. If not, see . */ -/* This module uses the libpthdebug.a library provided by AIX 4.3+ for +/* This module uses the libpthdebug.a library provided by AIX 7.2+ for debugging pthread applications. Some name prefix conventions: @@ -56,18 +56,9 @@ #include #include -#if !HAVE_DECL_GETTHRDS -extern int getthrds (pid_t, struct thrdsinfo64 *, int, tid_t *, int); -#endif - /* Whether to emit debugging output. */ static bool debug_aix_thread; -/* In AIX 5.1, functions use pthdb_tid_t instead of tid_t. */ -#ifndef PTHDB_VERSION_3 -#define pthdb_tid_t tid_t -#endif - /* Success and failure values returned by pthdb callbacks. */ #define PDC_SUCCESS PTHDB_SUCCESS @@ -315,40 +306,22 @@ ptrace_check (int req, int id, int ret) return 0; /* Not reached. */ } -/* Call ptracex (REQ, ID, ADDR, DATA, BUF) or - ptrace64 (REQ, ID, ADDR, DATA, BUF) if HAVE_PTRACE64. - Return success. */ - -#ifdef HAVE_PTRACE64 -# define ptracex(request, pid, addr, data, buf) \ - ptrace64 (request, pid, addr, data, buf) -#endif +/* Call ptrace64 (REQ, ID, ADDR, DATA, BUF). Return success. */ static int ptrace64aix (int req, int id, long long addr, int data, int *buf) { errno = 0; - return ptrace_check (req, id, ptracex (req, id, addr, data, buf)); + return ptrace_check (req, id, ptrace64 (req, id, addr, data, buf)); } -/* Call ptrace (REQ, ID, ADDR, DATA, BUF) or - ptrace64 (REQ, ID, ADDR, DATA, BUF) if HAVE_PTRACE64. - Return success. */ - -#ifdef HAVE_PTRACE64 -# define ptrace(request, pid, addr, data, buf) \ - ptrace64 (request, pid, addr, data, buf) -# define addr_ptr long long -#else -# define addr_ptr int * -#endif +/* Call ptrace64 (REQ, ID, ADDR, DATA, BUF). Return success. */ static int -ptrace32 (int req, int id, addr_ptr addr, int data, int *buf) +ptrace32 (int req, int id, long long addr, int data, int *buf) { errno = 0; - return ptrace_check (req, id, - ptrace (req, id, addr, data, buf)); + return ptrace_check (req, id, ptrace64 (req, id, addr, data, buf)); } /* If *PIDP is a composite process/thread id, convert it to a @@ -1082,7 +1055,7 @@ aix_thread_target::resume (ptid_t ptid, int step, enum gdb_signal sig) ptrace64aix (PTT_CONTINUE, tid[0], (long long) 1, gdb_signal_to_host (sig), (PTRACE_TYPE_ARG5) tid); else - ptrace32 (PTT_CONTINUE, tid[0], (addr_ptr) 1, + ptrace32 (PTT_CONTINUE, tid[0], (long long) 1, gdb_signal_to_host (sig), (PTRACE_TYPE_ARG5) tid); } } @@ -1826,30 +1799,12 @@ store_regs_kernel_thread (const struct regcache *regcache, int regno, } else { - /* The contents of "struct ptspr" were declared as "unsigned - long" up to AIX 5.2, but are "unsigned int" since 5.3. - Use temporaries to work around this problem. Also, add an - assert here to make sure we fail if the system header files - use "unsigned long", and the size of that type is not what - the headers expect. */ - uint32_t tmp_iar, tmp_msr, tmp_cr, tmp_lr, tmp_ctr, tmp_xer, - tmp_fpscr; - - gdb_assert (sizeof (sprs32.pt_iar) == 4); - /* Pre-fetch: some registers won't be in the cache. */ ptrace32 (PTT_READ_SPRS, tid, (uintptr_t) &sprs32, 0, NULL); - fill_sprs32 (regcache, &tmp_iar, &tmp_msr, &tmp_cr, &tmp_lr, - &tmp_ctr, &tmp_xer, &tmp_fpscr); - - sprs32.pt_iar = tmp_iar; - sprs32.pt_msr = tmp_msr; - sprs32.pt_cr = tmp_cr; - sprs32.pt_lr = tmp_lr; - sprs32.pt_ctr = tmp_ctr; - sprs32.pt_xer = tmp_xer; - sprs32.pt_fpscr = tmp_fpscr; + fill_sprs32 (regcache, &sprs32.pt_iar, &sprs32.pt_msr, + &sprs32.pt_cr, &sprs32.pt_lr, &sprs32.pt_ctr, + &sprs32.pt_xer, &sprs32.pt_fpscr); if (tdep->ppc_mq_regnum >= 0) if (REG_VALID == regcache->get_register_status -- 2.51.2