From patchwork Mon Jul 19 21:22:33 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 480048 Delivered-To: patch@linaro.org Received: by 2002:a02:c94a:0:0:0:0:0 with SMTP id u10csp4503348jao; Mon, 19 Jul 2021 14:23:14 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw9kEXWxhSHGycFmwdLBi4K4wu08Lyzu6TAI276dWSB+POd8IChhb16Q/ME9ES054+nBMTk X-Received: by 2002:ab0:3b18:: with SMTP id n24mr28528334uaw.95.1626729794551; Mon, 19 Jul 2021 14:23:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626729794; cv=none; d=google.com; s=arc-20160816; b=MGNP+lB5AO2Vp5Wsu29M0cfM44/IHJsakYM15t5Olc2gaP5DWuyrdVJ1lr21ARfsKG U9XqabasUqW5uzyg2p1IEgQgPnQfPDOtPuzJxa0lG31hdcCbJ4yCuxtScO9Cu05lFHve HdEtNwge6yonIvlhAIotaNTD86QbwClaByJeZarChFGdTvmdUAkanIgwzdRMmaGaCjWC jjwpYJ9NoCa3q1JRpesW9e2PC1Lu0Q1N0NmmiPPUaD49Xek8QHVdQXRsj/+181KFyATg QYbkEwF1HwM8AGgcsYciSLas4R32raNTXbhQte8f2Oa0tk4nyHOW3Fb/aVxZJGfQ8zMJ C5CA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=+p6ro6D5KFq3icWk04aTft7NAAiKyhL4s7d6P84Hy6s=; b=lU80JJjptZV2dm3eeRMbdNnQBWQvD4ihfHKs7JhphlHaAQPmHivnCSBUJvHUfLoAak IzIfXuYkcWAWi/N2uepb1t9C2B3EzmnfrJ0Cl1ZDMjAsnOEwQPK68BCahapMOVLPKspF NJFSqyEsuh+7aQUcoaQuXBM+WUdFr6qrPN7HUnnH9y4wiCHwCQxetgboZR8WvDm7igwg AvqEQmjWiiFhQ+5ZtCTXTi8UlfFtjKyy+MCze1jukj3WB8M1I/8l695oBcx57FHC1gmr 4nPuYjhNDh+r9l0DF1g6lTreOMfQHIWQmzgdlwTRZB4+z3L0SFn0ZbENVNQEmil9KkFB uXkQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="YPoL/WIx"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id m28si17941038vsj.287.2021.07.19.14.23.14 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Mon, 19 Jul 2021 14:23:14 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="YPoL/WIx"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:49328 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m5ajJ-0004RA-Uw for patch@linaro.org; Mon, 19 Jul 2021 17:23:13 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60612) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m5aj5-0004K9-9U for qemu-devel@nongnu.org; Mon, 19 Jul 2021 17:22:59 -0400 Received: from mail-pg1-x52b.google.com ([2607:f8b0:4864:20::52b]:33415) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m5aj3-0000t6-Pj for qemu-devel@nongnu.org; Mon, 19 Jul 2021 17:22:58 -0400 Received: by mail-pg1-x52b.google.com with SMTP id 37so20592689pgq.0 for ; Mon, 19 Jul 2021 14:22:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=+p6ro6D5KFq3icWk04aTft7NAAiKyhL4s7d6P84Hy6s=; b=YPoL/WIx0mnwSOwPkTh7ICAypA8Cy0siFDpmeDy+v4LwHjksPzlx628S/Ug2rBliv+ UoWvtld3pRKvhqDbsqwWkuRbFzozxwYQ1JVUG3RjqpndGly8+0TZNSMsGlg4QUOPvxBS 5MjodjqJHPyZr67JPbhyIOO67cX01SkCvGA283xLvkRfFYTCCT6McLDGILW+MzrVoeEH r5ZZSa145UM198H2aJLtPdvXKkoQ0sqCACmcCFC/a0zR8QSm/Vju9BO1Pr/9BW4nZiyE m0lHXkbklhUuvBL46ZwzQ64vQg3lIFa9xsigETOqDxawOiW/sriF5jWzn+F9sTA/6UBg 5Dpw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=+p6ro6D5KFq3icWk04aTft7NAAiKyhL4s7d6P84Hy6s=; b=cprnwgYCk+5aKB9oQ4wwPXwsZo9y9iOTiOviQQKS/dOyNh77+9apJR6hImubG2moO0 hJ9dAlof6cZcfikREwwyrrWBEmJtck13s6aq6KXw9AnU195od3XGD+msMtiEZucFOIaJ Ejj1g0DWafEJ5moVGGnsX5q7SJlVeHpuPO0yqT8WoihFba9lCa9HlAKYbzRfYrDHd6KH SO3nKkDHK/WS/CjMYlwXlSXxEnpvWfv0gmhanqWy+gXnxVf9tu8vhpa77qHNFoxfue2C vEhV/GR+cpUo8Vm6vR4GlledZZ2bebbmA4ndsMKz9Qg0X61X8a6qv48VbN8SeXBRf0aX IBBA== X-Gm-Message-State: AOAM532lEIOBXdm5xE8EvZwHVf9brwJb+KAhy0x+K6GsxAiZcNSZB7WY GMQrbklCE38R99/N+EWwnDZq/pEcV6jElw== X-Received: by 2002:a62:15c5:0:b029:32c:ea9f:a5ed with SMTP id 188-20020a6215c50000b029032cea9fa5edmr27400216pfv.27.1626729776536; Mon, 19 Jul 2021 14:22:56 -0700 (PDT) Received: from localhost.localdomain (204-210-126-223.res.spectrum.com. [204.210.126.223]) by smtp.gmail.com with ESMTPSA id e4sm25008434pgi.94.2021.07.19.14.22.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Jul 2021 14:22:56 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH for-6.1 v4 09/15] hw/core: Introduce TCGCPUOps.debug_check_breakpoint Date: Mon, 19 Jul 2021 11:22:33 -1000 Message-Id: <20210719212239.428740-10-richard.henderson@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210719212239.428740-1-richard.henderson@linaro.org> References: <20210719212239.428740-1-richard.henderson@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::52b; envelope-from=richard.henderson@linaro.org; helo=mail-pg1-x52b.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, mark.cave-ayland@ilande.co.uk, alex.bennee@linaro.org, f4bug@amsat.org Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" New hook to return true when an architectural breakpoint is to be recognized and false when it should be suppressed. First use must wait until other pieces are in place. Signed-off-by: Richard Henderson --- include/hw/core/tcg-cpu-ops.h | 6 ++++++ 1 file changed, 6 insertions(+) -- 2.25.1 diff --git a/include/hw/core/tcg-cpu-ops.h b/include/hw/core/tcg-cpu-ops.h index 72d791438c..eab27d0c03 100644 --- a/include/hw/core/tcg-cpu-ops.h +++ b/include/hw/core/tcg-cpu-ops.h @@ -88,6 +88,12 @@ struct TCGCPUOps { */ bool (*debug_check_watchpoint)(CPUState *cpu, CPUWatchpoint *wp); + /** + * @debug_check_breakpoint: return true if the architectural + * breakpoint whose PC has matched should really fire. + */ + bool (*debug_check_breakpoint)(CPUState *cpu); + /** * @io_recompile_replay_branch: Callback for cpu_io_recompile. *