From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id 0AD323858C00 for ; Wed, 20 Jul 2022 19:45:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 0AD323858C00 Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-312-7VLT3pI5Pi2sb3an3nEl7g-1; Wed, 20 Jul 2022 15:44:54 -0400 X-MC-Unique: 7VLT3pI5Pi2sb3an3nEl7g-1 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 439632813D34 for ; Wed, 20 Jul 2022 19:44:54 +0000 (UTC) Received: from blarsen.com (ovpn-116-8.gru2.redhat.com [10.97.116.8]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9BC1340C141D; Wed, 20 Jul 2022 19:44:53 +0000 (UTC) From: Bruno Larsen To: gdb-patches@sourceware.org Subject: [PATCH v4 00/15] Clean gdb.base when testing with clang Date: Wed, 20 Jul 2022 16:44:25 -0300 Message-Id: <20220720194441.168906-1-blarsen@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.11.54.2 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII"; x-default=true X-Spam-Status: No, score=-7.0 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham 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-List-Received-Date: Wed, 20 Jul 2022 19:45:03 -0000 When testing GDB with clang, gdb.base had over 50 more failures than when testing with gcc. Examining the failed tests led to a few clang bugs, a few GDB bugs, and many testsuite assumptions that could be changed. After this patch series, nothing should be changed for testing with gcc, and testing with clang should only show non-trivial failures for maint.exp and macscp.exp, along with the same GCC failures. Changes in v4: * Added new test to step through a function's epoligue * renamed gdb_step_until_regexp -> gdb_step_until * small style and wording changes in patches 1 and 2 * Dropped patch 3 - no longer necessary * patch 4 was reworked based on Andrew's suggestion small note, Andrew has OK'd patched 5 and 6 (currently 4 and 5) in v3; Changes in v3: * Fixed some issues that only showed up on CXX_FOR_TARGET=clang * rebased on current master Changes in v2: * Introduced gdb_step_until_regexp, based on Pedro's and Andrew's suggestions * reworked fixes for: skip.exp, skip-solib.exp and msym-bp-shl.exp * Used Pedro's suggestion for call-ar-st * reordered patches slightly Bruno Larsen (15): gdb/testsuite: introduce gdb_step_until gdb/testsuite: Add a proc to test where compiler links the epilogue Change gdb.base/skip-solib.exp deal with lack of epilogue information gdb/testsuite: change gdb.base/nodebug.exp to not fail with clang update gdb.base/info-program.exp to not fail with clang fix gdb.base/access-mem-running.exp for clang testing Fix gdb.base/call-ar-st to work with Clang add xfails to gdb.base/complex-parts.exp when testing with clang gdb/testsuite: fix gdb.base/msym-bp-shl when running with Clang explicitly test for stderr in gdb.base/dprintf.exp gdb/testsuite: Update gdb.base/so-impl-ld.exp [gdb/testsuite]: fix gdb.base/jit-elf.exp when testing with clang gdb/testsuite: fix gdb.base/info-types-c++ with clang gdb.base/skip.exp: Use finish to exit functions gdb/testsuite: Add test to step through function epilogue gdb/testsuite/gdb.base/access-mem-running.c | 2 +- gdb/testsuite/gdb.base/call-ar-st.exp | 13 ++- gdb/testsuite/gdb.base/complex-parts.exp | 5 + gdb/testsuite/gdb.base/dprintf.exp | 10 ++ gdb/testsuite/gdb.base/info-program.exp | 2 +- gdb/testsuite/gdb.base/info-types.exp.tcl | 109 ++++++++++++------ gdb/testsuite/gdb.base/jit-elf.exp | 2 +- gdb/testsuite/gdb.base/msym-bp-shl.exp | 8 ++ gdb/testsuite/gdb.base/nodebug.exp | 12 +- gdb/testsuite/gdb.base/skip-inline.exp | 23 ++-- gdb/testsuite/gdb.base/skip-solib-lib.c | 3 +- gdb/testsuite/gdb.base/skip-solib-main.c | 3 +- gdb/testsuite/gdb.base/skip-solib.exp | 12 +- gdb/testsuite/gdb.base/skip.exp | 32 +++-- gdb/testsuite/gdb.base/so-impl-ld.exp | 13 +-- gdb/testsuite/gdb.base/solib1.c | 5 +- .../gdb.base/step-through-epilogue.c | 15 +++ .../gdb.base/step-through-epilogue.exp | 86 ++++++++++++++ gdb/testsuite/lib/gdb.exp | 62 ++++++++++ 19 files changed, 334 insertions(+), 83 deletions(-) create mode 100644 gdb/testsuite/gdb.base/step-through-epilogue.c create mode 100644 gdb/testsuite/gdb.base/step-through-epilogue.exp -- 2.31.1