From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id Xq7kKr1numa40gQAWB0awg (envelope-from ) for ; Mon, 12 Aug 2024 15:51:25 -0400 Authentication-Results: simark.ca; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=apRf2UZf; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 9D4F11E0D0; Mon, 12 Aug 2024 15:51:25 -0400 (EDT) Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (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 7EF091E08C for ; Mon, 12 Aug 2024 15:51:23 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id A8B903858404 for ; Mon, 12 Aug 2024 19:51:22 +0000 (GMT) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTP id A10D83858C60 for ; Mon, 12 Aug 2024 19:50:55 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org A10D83858C60 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org A10D83858C60 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=170.10.133.124 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1723492262; cv=none; b=KrvcnbVRSOBSK80VYtkj7/HqDpIAZkjv7aZokyAVLFU0f+1Ms2mdYWQFEB6czB3dSylcL48DRK2RRQ+XNVA9H86GKTjQymkAK7EhPEtxLLmPfmDAyD/q5rrket7FezmZYPetWEprlWnyK2pD5gDH4WPOjcOPrUf683ZAfP6wgiY= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1723492262; c=relaxed/simple; bh=TgwVIrmbvQFVISSIF48xyeUMRljkuE8ky6Wj6r8f3XE=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From; b=L+GL3CggATpkr0YVyRMjs+mIsQ1xGUdfWt07PBbjem/drlPuTr8Tw9p3q/TZcxu1t6wY+Lr70n4gj2XM6Mj9vAPT8OgApI6Qy6xCqiq6244QW26fNv+I//pBHXDQoaoJCZc8lhS2Wt/uJm3NQAikbngbt+bcq7idJU88O9TTswI= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1723492255; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=U7fukgZoSzbQAHPso84Kluv75dajk5HvsMejCtC50PU=; b=apRf2UZfWtAUlhXTSjJhnHmrGOb2gfPWBE7XNgK6qeBgxol9tN5anpNqGZgt8GB4CivvQO /4XYD8CH7jrODURTn/sDcBswI9htJUknKKj6x8tbFuutck+pjXa9ws04MPgtgwWg8ctXAv VueWJGsB7AfrLB/wK/3Wo8I475KN4qQ= Received: from mail-pg1-f197.google.com (mail-pg1-f197.google.com [209.85.215.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-520-Vc9ViHoLP0yyXWBnTcXMkQ-1; Mon, 12 Aug 2024 15:50:52 -0400 X-MC-Unique: Vc9ViHoLP0yyXWBnTcXMkQ-1 Received: by mail-pg1-f197.google.com with SMTP id 41be03b00d2f7-6507e2f0615so3684412a12.1 for ; Mon, 12 Aug 2024 12:50:52 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723492250; x=1724097050; h=content-transfer-encoding:in-reply-to:from:content-language :references:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=U7fukgZoSzbQAHPso84Kluv75dajk5HvsMejCtC50PU=; b=LJmKJIlO9P78EAAofXX2yeqmnxZHt1wjeq/V6+pUu8mWvzerue3e0a5he6zWHXxULX uyF3nq+/se/RFjOcTeai59NbMtGh7V3YbzFN/y05vJ9hroXdYuHIIoGb5/jWIseksoU6 G4OcJ2mh0rKqAgdIapjlEtnvp9FoK67brw/u+X59zPwKm08f+HNJTUW+zSLW48F3uR7K C83hcl2/p4WjLPnkn4V+k647tubpQnMURmHXaf7jyM0HOKdzMHf5uBCcvr0v6KrRu6Ek FKkfeCr7O3u6F5WEzwmNwCo+ScdDSJuFxxf3S0/ohfD2+YCO7kGthMDDEG0h3U0Aj/O/ Uk5w== X-Forwarded-Encrypted: i=1; AJvYcCWt4BgD+y8SbngEQhPd0higu9nrOa2/N8jPazRgsaLo+ZUbcXLgAtxa5hrPpiqgavLoIOka09oQEtB+iCKMQXqrdNXJXGCEUH3iTw== X-Gm-Message-State: AOJu0Yxgor6JAVzJAy1P0Nvrs8vJauUMonDkmJT12jbgxK2D8UB07qai sV2TGECbq6hh7nDkBBtWiPVbpUZWxRi298io+rWgW3w4rSc/m4ucwDSEMOE78wmRJoXDVYi7sA/ zFOBK/6ya/JUZArgAiv7oLRdjOPeUaIkMmrht+QDadM/I5/50OEIfBPuPF2SjWmZzkyQ= X-Received: by 2002:a17:903:24c:b0:1f6:f298:e50 with SMTP id d9443c01a7336-201ca1c698amr20123875ad.58.1723492249609; Mon, 12 Aug 2024 12:50:49 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGD2JmcDXNRPKUBpnDSr2xAeHczzU51T9TzqBuJJ5pWeWS6QDv2NvgbxvpY6i3mnicFzf4WGg== X-Received: by 2002:a17:903:24c:b0:1f6:f298:e50 with SMTP id d9443c01a7336-201ca1c698amr20123665ad.58.1723492249087; Mon, 12 Aug 2024 12:50:49 -0700 (PDT) Received: from ?IPV6:2804:14d:8084:92c5::1002? ([2804:14d:8084:92c5::1002]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-201cd131512sm640855ad.7.2024.08.12.12.50.47 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 12 Aug 2024 12:50:48 -0700 (PDT) Message-ID: <9388437d-557d-45df-8513-d0a91a8e97a7@redhat.com> Date: Mon, 12 Aug 2024 16:50:45 -0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v6] Change message when reaching end of reverse history. To: Alex Chronopoulos , gdb-patches@sourceware.org References: <20240802164306.252264-1-achronop@gmail.com> From: Guinevere Larsen In-Reply-To: <20240802164306.252264-1-achronop@gmail.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-11.5 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE 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.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 On 8/2/24 1:43 PM, Alex Chronopoulos wrote: > In a record session, when we move backward, GDB switches from normal > execution to simulation. Moving forward again, the emulation continues > until the end of the reverse history. When the end is reached, the > execution stops, and a warning message is shown. This message has been > modified to indicate that the forward emulation has reached the end, but > the execution can continue as normal, and the recording will also continue. > > Before this patch, the warning message shown in that case was the same as > in the reverse case. This meant that when the end of history was reached in > either backward or forward emulation, the same message was displayed: > > "No more reverse-execution history." > > This message has changed for these two cases. Backward emulation: > > "Reached end of recorded history; stopping. > Backward execution from here not possible." > > Forward emulation: > > "Reached end of recorded history; stopping. > Following forward execution will be added to history." > > The reason for this change is that the initial message was deceiving, for > the forward case, making the user believe that forward debugging could not > continue. > > Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=31224 > --- Hi! I think this is good to go in, but I would like Markus to chime in before pushing, since he mantains the other record subsystem, so for now Reviewed-By: Guinevere Larsen > gdb/NEWS | 5 +++ > gdb/infrun.c | 9 +++++- > .../gdb.btrace/multi-thread-step.exp | 6 ++-- > gdb/testsuite/gdb.btrace/nohist.exp | 2 +- > gdb/testsuite/gdb.btrace/non-stop.exp | 32 ++++++++++++------- > gdb/testsuite/gdb.btrace/stepi.exp | 14 ++++---- > gdb/testsuite/gdb.reverse/break-precsave.exp | 6 ++-- > gdb/testsuite/gdb.reverse/break-reverse.exp | 4 +-- > .../gdb.reverse/machinestate-precsave.exp | 2 +- > gdb/testsuite/gdb.reverse/sigall-precsave.exp | 2 +- > gdb/testsuite/gdb.reverse/sigall-reverse.exp | 2 +- > .../gdb.reverse/singlejmp-reverse.exp | 6 ++-- > 12 files changed, 57 insertions(+), 33 deletions(-) > > diff --git a/gdb/NEWS b/gdb/NEWS > index 50c033a7cfd..5d457b37796 100644 > --- a/gdb/NEWS > +++ b/gdb/NEWS > @@ -20,6 +20,11 @@ > * MTE (Memory Tagging Extension) debugging is now supported on AArch64 baremetal > targets. > > +* In a record session, when a forward emulation reaches the end of the reverse > + history, the warning message has been changed to indicate that the end of the > + history has been reached. It also specifies that the forward execution can > + continue, and the recording will also continue. > + > *** Changes in GDB 15 > > * The MPX commands "show/set mpx bound" have been deprecated, as Intel > diff --git a/gdb/infrun.c b/gdb/infrun.c > index 06b454bf78f..a0d1b99be3e 100644 > --- a/gdb/infrun.c > +++ b/gdb/infrun.c > @@ -9266,8 +9266,15 @@ print_no_history_reason (struct ui_out *uiout) > { > if (uiout->is_mi_like_p ()) > uiout->field_string ("reason", async_reason_lookup (EXEC_ASYNC_NO_HISTORY)); > + else if (execution_direction == EXEC_FORWARD) > + uiout->text ("\nReached end of recorded history; stopping.\nFollowing " > + "forward execution will be added to history.\n"); > else > - uiout->text ("\nNo more reverse-execution history.\n"); > + { > + gdb_assert (execution_direction == EXEC_REVERSE); > + uiout->text ("\nReached end of recorded history; stopping.\nBackward " > + "execution from here not possible.\n"); > + } > } > > /* Print current location without a level number, if we have changed > diff --git a/gdb/testsuite/gdb.btrace/multi-thread-step.exp b/gdb/testsuite/gdb.btrace/multi-thread-step.exp > index 154db9ae515..cd20e8ad9f0 100644 > --- a/gdb/testsuite/gdb.btrace/multi-thread-step.exp > +++ b/gdb/testsuite/gdb.btrace/multi-thread-step.exp > @@ -111,14 +111,14 @@ proc test_cont {} { > with_test_prefix "cont" { > gdb_test "thread 1" ".*" > with_test_prefix "thread 1" { > - gdb_test "continue" "No more reverse-execution history.*" > + gdb_test "continue" "Reached end of recorded history.*" > > check_not_replaying 1 > check_replay_insn 2 2 > } > gdb_test "thread 2" ".*" > with_test_prefix "thread 2" { > - gdb_test "continue" "No more reverse-execution history.*" > + gdb_test "continue" "Reached end of recorded history.*" > > check_not_replaying 1 > check_not_replaying 2 > @@ -128,7 +128,7 @@ proc test_cont {} { > > proc test_cont_all {} { > with_test_prefix "cont-all" { > - gdb_test "continue" "No more reverse-execution history.*" > + gdb_test "continue" "Reached end of recorded history.*" > > # this works because we're lock-stepping threads that executed exactly > # the same code starting from the same instruction. > diff --git a/gdb/testsuite/gdb.btrace/nohist.exp b/gdb/testsuite/gdb.btrace/nohist.exp > index d71909181c4..ac6a41c63e4 100644 > --- a/gdb/testsuite/gdb.btrace/nohist.exp > +++ b/gdb/testsuite/gdb.btrace/nohist.exp > @@ -42,7 +42,7 @@ with_test_prefix "forward" { > check_not_replaying > } > > -gdb_test "reverse-continue" "No more reverse-execution history\.\r\n.*" > +gdb_test "reverse-continue" "Reached end of recorded history; stopping.*" > > with_test_prefix "backward" { > check_not_replaying > diff --git a/gdb/testsuite/gdb.btrace/non-stop.exp b/gdb/testsuite/gdb.btrace/non-stop.exp > index 62c940e4cd6..5e43545f6a9 100644 > --- a/gdb/testsuite/gdb.btrace/non-stop.exp > +++ b/gdb/testsuite/gdb.btrace/non-stop.exp > @@ -79,16 +79,26 @@ proc gdb_cont_to_bp_line { line threads nthreads } { > $nthreads > } > > -proc gdb_cont_to_no_history { threads cmd nthreads } { > +proc gdb_cont_to_no_history_backward { threads cmd nthreads } { > gdb_cont_to $threads $cmd \ > [multi_line \ > - "No more reverse-execution history\." \ > + "Reached end of recorded.*Backward execution.*" \ > "\[^\\\r\\\n\]*" \ > "\[^\\\r\\\n\]*" \ > ] \ > $nthreads > } > > +proc gdb_cont_to_no_history_forward { threads cmd nthreads } { > + gdb_cont_to $threads $cmd \ > + [multi_line \ > + "Reached end of recorded.*Following forward.*" \ > + "\[^\\\r\\\n\]*" \ > + "\[^\\\r\\\n\]*" \ > + ] \ > + $nthreads > +} > + > # trace the code between the two breakpoints > with_test_prefix "prepare" { > gdb_cont_to_bp_line "$srcfile:$bp_1" all 2 > @@ -176,14 +186,14 @@ with_test_prefix "reverse-step" { > with_test_prefix "continue" { > with_test_prefix "thread 1" { > with_test_prefix "continue" { > - gdb_cont_to_no_history 1 "continue" 1 > + gdb_cont_to_no_history_forward 1 "continue" 1 > gdb_test "thread apply 1 info record" \ > ".*Recorded \[0-9\]+ instructions \[^\\\r\\\n\]*" > gdb_test "thread apply 2 info record" \ > ".*Replay in progress\. At instruction 5\." > } > with_test_prefix "reverse-continue" { > - gdb_cont_to_no_history 1 "reverse-continue" 1 > + gdb_cont_to_no_history_backward 1 "reverse-continue" 1 > gdb_test "thread apply 1 info record" \ > ".*Replay in progress\. At instruction 1\." > gdb_test "thread apply 2 info record" \ > @@ -193,14 +203,14 @@ with_test_prefix "continue" { > > with_test_prefix "thread 2" { > with_test_prefix "continue" { > - gdb_cont_to_no_history 2 "continue" 1 > + gdb_cont_to_no_history_forward 2 "continue" 1 > gdb_test "thread apply 1 info record" \ > ".*Replay in progress\. At instruction 1\." > gdb_test "thread apply 2 info record" \ > ".*Recorded \[0-9\]+ instructions \[^\\\r\\\n\]*" > } > with_test_prefix "reverse-continue" { > - gdb_cont_to_no_history 2 "reverse-continue" 1 > + gdb_cont_to_no_history_backward 2 "reverse-continue" 1 > gdb_test "thread apply 1 info record" \ > ".*Replay in progress\. At instruction 1\." > gdb_test "thread apply 2 info record" \ > @@ -215,8 +225,8 @@ with_test_prefix "no progress" { > gdb_test "thread apply 1 record goto end" ".*" > gdb_test "thread apply 2 record goto begin" ".*" > > - gdb_cont_to_no_history 1 "continue" 1 > - gdb_cont_to_no_history 1 "step" 1 > + gdb_cont_to_no_history_forward 1 "continue" 1 > + gdb_cont_to_no_history_forward 1 "step" 1 > gdb_test "thread apply 1 info record" \ > ".*Recorded \[0-9\]+ instructions \[^\\\r\\\n\]*" > gdb_test "thread apply 2 info record" \ > @@ -227,8 +237,8 @@ with_test_prefix "no progress" { > gdb_test "thread apply 1 record goto begin" ".*" > gdb_test "thread apply 2 record goto end" ".*" > > - gdb_cont_to_no_history 2 "continue" 1 > - gdb_cont_to_no_history 2 "step" 1 > + gdb_cont_to_no_history_forward 2 "continue" 1 > + gdb_cont_to_no_history_forward 2 "step" 1 > gdb_test "thread apply 1 info record" \ > ".*Replay in progress\. At instruction 1\." > gdb_test "thread apply 2 info record" \ > @@ -238,7 +248,7 @@ with_test_prefix "no progress" { > with_test_prefix "all" { > gdb_test "thread apply all record goto begin" ".*" > > - gdb_cont_to_no_history all "continue" 2 > + gdb_cont_to_no_history_forward all "continue" 2 > gdb_test "thread apply 1 info record" \ > ".*Recorded \[0-9\]+ instructions \[^\\\r\\\n\]*" > gdb_test "thread apply 2 info record" \ > diff --git a/gdb/testsuite/gdb.btrace/stepi.exp b/gdb/testsuite/gdb.btrace/stepi.exp > index a70a5adf046..689bc792b24 100644 > --- a/gdb/testsuite/gdb.btrace/stepi.exp > +++ b/gdb/testsuite/gdb.btrace/stepi.exp > @@ -100,7 +100,7 @@ with_test_prefix "reverse-nexti.1" { > # we can't reverse-nexti any further > with_test_prefix "reverse-nexti.2" { > gdb_test "reverse-nexti" \ > - "No more reverse-execution history\.\r\n.*main\.2.*" \ > + "Reached end of recorded history; stopping\.\r\n.*main\.2.*" \ > "reverse-nexti.2" > check_replay_at 1 > } > @@ -140,20 +140,20 @@ with_test_prefix "goto begin" { > > with_test_prefix "reverse-stepi" { > gdb_test "reverse-stepi" \ > - "No more reverse-execution history\.\r\n.*main\.2.*" \ > + "Reached end of recorded history; stopping\.\r\n.*main\.2.*" \ > "reverse-stepi.1" > gdb_test "reverse-stepi" \ > - "No more reverse-execution history\.\r\n.*main\.2.*" \ > + "Reached end of recorded history; stopping\.\r\n.*main\.2.*" \ > "reverse-stepi.2" > check_replay_at 1 > } > > with_test_prefix "reverse-nexti" { > gdb_test "reverse-nexti" \ > - "No more reverse-execution history\.\r\n.*main\.2.*" \ > + "Reached end of recorded history; stopping\.\r\n.*main\.2.*" \ > "reverse-nexti.1" > gdb_test "reverse-nexti" \ > - "No more reverse-execution history\.\r\n.*main\.2.*" \ > + "Reached end of recorded history; stopping\.\r\n.*main\.2.*" \ > "reverse-nexti.2" > check_replay_at 1 > } > @@ -169,10 +169,10 @@ with_test_prefix "goto begin" { > with_test_prefix "reverse-stepi" { > gdb_test "reverse-stepi" ".*main\.2.*" "reverse-stepi.1" > gdb_test "reverse-stepi" \ > - "No more reverse-execution history\.\r\n.*main\.2.*" \ > + "Reached end of recorded history; stopping\.\r\n.*main\.2.*" \ > "reverse-stepi.2" > gdb_test "reverse-stepi" \ > - "No more reverse-execution history\.\r\n.*main\.2.*" \ > + "Reached end of recorded history; stopping\.\r\n.*main\.2.*" \ > "reverse-stepi.3" > check_replay_at 1 > } > diff --git a/gdb/testsuite/gdb.reverse/break-precsave.exp b/gdb/testsuite/gdb.reverse/break-precsave.exp > index b9d94681247..6d9b312185f 100644 > --- a/gdb/testsuite/gdb.reverse/break-precsave.exp > +++ b/gdb/testsuite/gdb.reverse/break-precsave.exp > @@ -73,7 +73,7 @@ proc precsave_tests {} { > -re ".*Breakpoint $decimal,.*$srcfile:$end_location.*$gdb_prompt $" { > pass "go to end of main forward" > } > - -re "No more reverse-execution history.* end of main .*$gdb_prompt $" { > + -re -wrap "Reached end of recorded.*Following forward.* end of main .*" { > pass "go to end of main forward" > } > } > @@ -87,7 +87,7 @@ proc precsave_tests {} { > -re ".*Breakpoint $decimal,.*$srcfile:$main_location.*$gdb_prompt $" { > pass "main backward" > } > - -re "No more reverse-execution history.* break in main .*$gdb_prompt $" { > + -re -wrap "Reached end of recorded.*Backward execution.* break in main .*" { > pass "main backward" > } > } > @@ -103,7 +103,7 @@ proc precsave_tests {} { > -re ".*Breakpoint $decimal,.*$srcfile:$end_location.*$gdb_prompt $" { > pass "end of record log" > } > - -re "No more reverse-execution history.* end of main .*$gdb_prompt $" { > + -re -wrap "Reached end of recorded.*Following forward.* end of main .*" { > pass "end of record log" > } > } > diff --git a/gdb/testsuite/gdb.reverse/break-reverse.exp b/gdb/testsuite/gdb.reverse/break-reverse.exp > index 1dd327ca654..66e9712707f 100644 > --- a/gdb/testsuite/gdb.reverse/break-reverse.exp > +++ b/gdb/testsuite/gdb.reverse/break-reverse.exp > @@ -64,7 +64,7 @@ gdb_test_multiple "continue" "main backward" { > -re ".*Breakpoint $decimal,.*$srcfile:$main_location.*$gdb_prompt $" { > pass "main backward" > } > - -re "No more reverse-execution history.* break in main .*$gdb_prompt $" { > + -re -wrap "Reached end of recorded history.*Backward execution.*" { > pass "main backward" > } > } > @@ -80,7 +80,7 @@ gdb_test_multiple "continue" "end of record log" { > -re ".*Breakpoint $decimal,.*$srcfile:$end_location.*$gdb_prompt $" { > pass "end of record log" > } > - -re "No more reverse-execution history.* end of main .*$gdb_prompt $" { > + -re -wrap "Reached end of recorded history.*Following forward.*" { > pass "end of record log" > } > } > diff --git a/gdb/testsuite/gdb.reverse/machinestate-precsave.exp b/gdb/testsuite/gdb.reverse/machinestate-precsave.exp > index 19c5934bfdf..cedca0f9b65 100644 > --- a/gdb/testsuite/gdb.reverse/machinestate-precsave.exp > +++ b/gdb/testsuite/gdb.reverse/machinestate-precsave.exp > @@ -85,7 +85,7 @@ gdb_test_multiple "continue" "go to end of main forward" { > -re ".*Breakpoint $decimal,.*$srcfile:$endmain.*$gdb_prompt $" { > pass "go to end of main forward" > } > - -re "No more reverse-execution history.* end main .*$gdb_prompt $" { > + -re -wrap "Reached end of recorded history.*Following forward.*" { > pass "go to end of main forward" > } > } > diff --git a/gdb/testsuite/gdb.reverse/sigall-precsave.exp b/gdb/testsuite/gdb.reverse/sigall-precsave.exp > index e5890ad7af7..aab4551c874 100644 > --- a/gdb/testsuite/gdb.reverse/sigall-precsave.exp > +++ b/gdb/testsuite/gdb.reverse/sigall-precsave.exp > @@ -128,7 +128,7 @@ proc test_one_sig_reverse {prevsig} { > xfail "$testmsg (handled)" > } > } > - -re "No more reverse-execution history.*kill.*$gdb_prompt " { > + -re "Reached end of recorded history.*Backward execution.*kill.*$gdb_prompt " { > if {$saw_signal} { > pass "$testmsg (handled)" > } else { > diff --git a/gdb/testsuite/gdb.reverse/sigall-reverse.exp b/gdb/testsuite/gdb.reverse/sigall-reverse.exp > index f2cf55b8ae4..884b178f9ee 100644 > --- a/gdb/testsuite/gdb.reverse/sigall-reverse.exp > +++ b/gdb/testsuite/gdb.reverse/sigall-reverse.exp > @@ -134,7 +134,7 @@ proc test_one_sig_reverse {prevsig} { > xfail "$testmsg (handled)" > } > } > - -re "No more reverse-execution history.*kill.*$gdb_prompt " { > + -re "Reached end of recorded.*Backward execution.*kill.*$gdb_prompt " { > if {$saw_signal} { > pass "$testmsg (handled)" > } else { > diff --git a/gdb/testsuite/gdb.reverse/singlejmp-reverse.exp b/gdb/testsuite/gdb.reverse/singlejmp-reverse.exp > index 971d88b5ce6..73923564514 100644 > --- a/gdb/testsuite/gdb.reverse/singlejmp-reverse.exp > +++ b/gdb/testsuite/gdb.reverse/singlejmp-reverse.exp > @@ -50,11 +50,13 @@ gdb_test "next" {nodebug \(\);} "next to nodebug" > gdb_test "next" {v = 3;} "next to v = 3" > > # FAIL was: > -# No more reverse-execution history. > +# Reached end of recorded history; stopping. > +# Backward execution from here not possible. > # { > gdb_test "reverse-step" {nodebug \(\);} > > # FAIL was: > -# No more reverse-execution history. > +# Reached end of recorded history; stopping. > +# Backward execution from here not possible. > # { > gdb_test "reverse-next" {f \(\);} -- Cheers, Guinevere Larsen She/Her/Hers