From patchwork Tue Mar 14 20:04:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Tromey X-Patchwork-Id: 55582 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 276BC3858005 for ; Tue, 14 Mar 2023 20:05:12 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 276BC3858005 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1678824312; bh=skingKmLqrrWXu00b9DTHuAX7LSFa6jzX0bg33bt0QY=; h=Subject:Date:To:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=C+LS0xIzeHzTPLd//lYqcyv7tK+zL52ielkSbucNaMSG/FWvEjwBsrY6kyMZxzLmm gF4ANODziMVIFAP2Cszs/4AN8yrk9s9bGiyIHVnfF3yJNMcxg1fgcGFrzy6ct4CwPd R8D7UPetfgjZIhS0VcTuzJjQAJZiZwyZ0RYXEBeY= X-Original-To: gdb-patches@sourceware.org Delivered-To: gdb-patches@sourceware.org Received: from mail-io1-xd36.google.com (mail-io1-xd36.google.com [IPv6:2607:f8b0:4864:20::d36]) by sourceware.org (Postfix) with ESMTPS id AAC5C3858D33 for ; Tue, 14 Mar 2023 20:04:47 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org AAC5C3858D33 Received: by mail-io1-xd36.google.com with SMTP id v10so401202iol.9 for ; Tue, 14 Mar 2023 13:04:47 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678824287; h=to:content-transfer-encoding:mime-version:message-id:date:subject :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=skingKmLqrrWXu00b9DTHuAX7LSFa6jzX0bg33bt0QY=; b=Latgw1tw6PJKmZbd7emKBIQdwHMq8koKuFQHpfg1CmaczH56ikpBsk3IMZx60/RGPC p22O4+liiC+1lU9qKiTTQ4bSVRPmM6FnILKuX7B/ts3d+5UAp3zNCrWcZqugyk9H8F5w G+9QdBUpOFlv2ihf/yKyOSI+T0cZLQTnn79xZQ0iWSA1q3xN09LAJ0/nR7RStB16XjdA IQmL0TGaX8G78s70EBta4zLprDdjzOTyErwtMvOKVy/1BivZo1yu/nMQbXDBwCOOv4PO HWyfsZTFAqXP7T/m5UYiqRUb8PN4Ap1bnA3wDzQM7w+8Dfis2/POSq9hKiHH7I+w17Ca 4rRw== X-Gm-Message-State: AO0yUKXrqdzCwnvPgrpWiMWH6ZkHXRI5xZ8MH3zgRBOIOLSEldjv11X4 MkjkDBmCH2ZJsA5XdPhD4Z6vYy1UMOG1pQ9bORg= X-Google-Smtp-Source: AK7set9k4TEasw07rgXJw/qIZ23EYF/GgWr0C3iGOrydEDj7vBuVk+vkLJywfujDxZIhrM2O1ww/ig== X-Received: by 2002:a5d:9f0c:0:b0:74c:b686:6227 with SMTP id q12-20020a5d9f0c000000b0074cb6866227mr11718828iot.14.1678824286904; Tue, 14 Mar 2023 13:04:46 -0700 (PDT) Received: from localhost.localdomain (71-211-185-113.hlrn.qwest.net. [71.211.185.113]) by smtp.gmail.com with ESMTPSA id m13-20020a056638224d00b003ee9720740esm1030257jas.153.2023.03.14.13.04.46 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Mar 2023 13:04:46 -0700 (PDT) Subject: [PATCH 0/5] Implement Ada Pragma Import and Pragma Export Date: Tue, 14 Mar 2023 14:04:44 -0600 Message-Id: <20230314-submit-pragma-import-export-v1-0-a235709f7e96@adacore.com> MIME-Version: 1.0 X-B4-Tracking: v=1; b=H4sIAFzTEGQC/x2NQQqDMBBFryKz7kA0FttepXQxSac6i0SZSYsg3 r3R1efx4b0NjFXY4NFsoPwTkzlXaC8NxInyyCjvytC5zjvf9mjfkKTgojQmQknLrAV5PSf6Wwi 9G4b71UM1BDLGoJTjdDgSWWE9jkX5I+uZfb72/Q/OKEEghgAAAA== To: gdb-patches@sourceware.org X-Mailer: b4 0.12.1 X-Spam-Status: No, score=-4.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, KAM_STOCKGEN, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Tom Tromey via Gdb-patches From: Tom Tromey Reply-To: Tom Tromey Errors-To: gdb-patches-bounces+patchwork=sourceware.org@sourceware.org Sender: "Gdb-patches" This adds better support to GDB for Ada's import and export feature. There are some minor cleanups to start with, then the bulk of the feature in the last patch, which I think should be reasonably self-explanatory. Regression tested on x86-64 Fedora 36. It's also been running in the AdaCore internal test suite for a while. Tom --- Tom Tromey (5): Introduce lookup_minimal_symbol_linkage Bump MAX_SYMBOL_IMPLS Define symbol::value_block separately Introduce symbol_block_ops::get_block_value Handle Ada Pragma Import and Pragma Export gdb/Makefile.in | 1 + gdb/dwarf2/ada-imported.c | 122 +++++++++++++++++++++++++++++ gdb/dwarf2/loc.h | 2 + gdb/dwarf2/read.c | 128 +++++++++++++++++++++++++++++++ gdb/minsyms.c | 22 ++++++ gdb/minsyms.h | 8 ++ gdb/symtab.c | 36 +++------ gdb/symtab.h | 20 ++++- gdb/testsuite/gdb.ada/complete.exp | 2 + gdb/testsuite/gdb.ada/complete/pck.ads | 4 +- gdb/testsuite/gdb.ada/import.exp | 58 ++++++++++++++ gdb/testsuite/gdb.ada/import/inc.c | 27 +++++++ gdb/testsuite/gdb.ada/import/pkg.adb | 28 +++++++ gdb/testsuite/gdb.ada/import/pkg.ads | 33 ++++++++ gdb/testsuite/gdb.ada/import/prog.adb | 31 ++++++++ gdb/testsuite/gdb.ada/info_auto_lang.exp | 10 ++- 16 files changed, 499 insertions(+), 33 deletions(-) --- base-commit: d0aa28e155baf16ec37afdf0193c3d58816c1927 change-id: 20230314-submit-pragma-import-export-c38bb4077953 Best regards,