From patchwork Wed May 19 18:30:00 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 442463 Delivered-To: patch@linaro.org Received: by 2002:a02:7a1b:0:0:0:0:0 with SMTP id a27csp1580668jac; Wed, 19 May 2021 11:32:47 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyjbPSFJtzztK8quc0gO8Gyj/bnUyya+9KjOK/XgdIyjgfrKtNoBjcg4v3Hk7LNTHA1NeK/ X-Received: by 2002:a05:6e02:1bc7:: with SMTP id x7mr411250ilv.206.1621449167685; Wed, 19 May 2021 11:32:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621449167; cv=none; d=google.com; s=arc-20160816; b=Am7UDbDbLLvkXTYgkOH/yfd9NSlbXuwbtlevQzj+a0vly/yjOi3Wt3H6Tjndc4t+X/ Qb/D0YjDrQsILvuNuEjoankqz3BcUSmLt9fahrWtsTwZM3A6n2sp/LvDftB27lmg81Iz CBi0O/3vPZSv2Jk+6LODfgFwUHg99CgkuOysBbXzoCb7HjPxN0pgIWLP/viLp1Yjvpib ZVQqnK1bPqDTxo0KWYomfuckrU7n49tc2+r585aHVTZfi0qijkWNI06kl7OEj4s8ORnm VGneY144RNa9ZOZra9Z4KrzgoNiSKQk1y3xJcPBmVP3DBOg8GFeCXspaBapmtiEK8g+E rlrA== 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:message-id:date:subject:to:from:dkim-signature; bh=se9t98h4DyEYvSpGaYwCGL20PjoT8CCQ3jD6oBco6Zk=; b=p++yFYpPHo3mii52BIrGTq3vOsaI6kF16R3YQdFqGu2BfGtvd2WNyu7nEnJeVluR0R iqjS5yVdLk0ZTHp7H2GuYIdOj/20XYNms0/rFacFZSR/Su8PMxGOfPf0iwJfxmE+0iEp jIYO13Tqo9fYaTSM4MQXUn7Nkuc0rIy1g2DFAhJYO/wIlLF+XUOS2qYQH1vECrYR3b3Q aRPGHrdw/j6HbAJd1Z69z9q1V4vfOM2pfs+082mOuIXAI/XdK1cdWxkTXooPWroI+HUn UqOibWyrBY5CFzbM50pJzI9O3VMwPfHJtUBAFfRDKYtpVC1U5JaH0EbnPlHA3pnTSHin BhFQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=QBht8JD6; 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=pass (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 x17si89598jan.4.2021.05.19.11.32.47 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 19 May 2021 11:32:47 -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=pass header.i=@linaro.org header.s=google header.b=QBht8JD6; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:33346 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ljQzu-0003VJ-Vd for patch@linaro.org; Wed, 19 May 2021 14:32:47 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50966) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ljQyE-0003OP-7n for qemu-devel@nongnu.org; Wed, 19 May 2021 14:31:02 -0400 Received: from mail-ot1-x32c.google.com ([2607:f8b0:4864:20::32c]:33287) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ljQy6-0005Ru-Ip for qemu-devel@nongnu.org; Wed, 19 May 2021 14:31:00 -0400 Received: by mail-ot1-x32c.google.com with SMTP id i23-20020a9d68d70000b02902dc19ed4c15so12660592oto.0 for ; Wed, 19 May 2021 11:30:53 -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:mime-version :content-transfer-encoding; bh=se9t98h4DyEYvSpGaYwCGL20PjoT8CCQ3jD6oBco6Zk=; b=QBht8JD6+TsXrgIyT0evGx32prkQXTWMpQLLSjg8BcyZzTva31PgiucsO9x38bYZ5e 1tWqjvEL35s/w1qPYP69fnrk1ckvvZ0WhjMmDM42Wb88RROHNpGawEtvbt48RMPd6vO9 bDvq/Yzgn2uBNQX0Yrcs6XQeFpXzGpWRVl+9rt/oHoJYkhbC2+6mOKEo4A0aQ1TjUb3c IB4U1iQlG+4IMTTNl0ZW3bDkmgk8IH3bVu6oF8pzU3x0M9mNb+jQ5rYHxALywSKqILAD +ost+DlKulqfuV+eEGThqrM3Uyk04K+eMTfQyw297ezx8FWUuLR1qaEeE65jMh608D6c xyDQ== 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:mime-version :content-transfer-encoding; bh=se9t98h4DyEYvSpGaYwCGL20PjoT8CCQ3jD6oBco6Zk=; b=OdduQ+VAOq5mvxnwmMTwE953YJSiakZmCtV351dyQKHDZk/cTtEWGGl1nQjTZKfrl3 ub6DwdiTCd71+jP/cxjZmSK+fjTgVi+Y28kk25M4Vq+AoobLf4xhifSNoqLOBMtH/1xp pr47V0JDxh2zMTVDFbE8IXB0mfJhYQpQHk6qqKObz/hZfIRsKeYpuZLznwAQLm8ZF7/7 SmwY8TQ03FtenQaRD+EYtoiDiSN+5KzXcUNlMH0mN9Nk3cB0W9BV/J/jEbfqnyi7cxrG WINUAmkRw42EdLBIUE38KzcOO1yJ0ThAbOXsB9YNhPkyukB7ZPMGvjhvKX6iMYaWg9+Y yIEw== X-Gm-Message-State: AOAM533HtXAJSGwIUXj2FV3HXFXaXK5kyXUhlFYqMErMx2NEibxpv16n iy1d7hYoc0yqSiKeUb1LUPJfHCjeT2IRnw1V X-Received: by 2002:a9d:65d5:: with SMTP id z21mr635619oth.229.1621449053023; Wed, 19 May 2021 11:30:53 -0700 (PDT) Received: from localhost.localdomain ([45.235.253.15]) by smtp.gmail.com with ESMTPSA id l9sm28428oou.43.2021.05.19.11.30.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 May 2021 11:30:52 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PULL 00/50] target/i386 translate cleanups Date: Wed, 19 May 2021 13:30:00 -0500 Message-Id: <20210519183050.875453-1-richard.henderson@linaro.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::32c; envelope-from=richard.henderson@linaro.org; helo=mail-ot1-x32c.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no 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 Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The following changes since commit c313e52e6459de2e9064767083a0c949c476e32b: Merge remote-tracking branch 'remotes/vivier2/tags/linux-user-for-6.1-pull-request' into staging (2021-05-18 16:17:22 +0100) are available in the Git repository at: https://gitlab.com/rth7680/qemu.git tags/pull-x86-20210519 for you to fetch changes up to 7fb7c42394c032eeaa419c869ff3b50491f6379d: target/i386: Remove user-only i/o stubs (2021-05-19 12:17:23 -0500) ---------------------------------------------------------------- Eliminate user-only helper stubs for privledged insns. ---------------------------------------------------------------- Richard Henderson (50): target/i386: Split out gen_exception_gpf target/i386: Split out check_cpl0 target/i386: Unify code paths for IRET target/i386: Split out check_vm86_iopl target/i386: Split out check_iopl target/i386: Assert PE is set for user-only target/i386: Assert CPL is 3 for user-only target/i386: Assert IOPL is 0 for user-only target/i386: Assert !VM86 for x86_64 user-only target/i386: Assert CODE32 for x86_64 user-only target/i386: Assert SS32 for x86_64 user-only target/i386: Assert CODE64 for x86_64 user-only target/i386: Assert LMA for x86_64 user-only target/i386: Assert !ADDSEG for x86_64 user-only target/i386: Introduce REX_PREFIX target/i386: Tidy REX_B, REX_X definition target/i386: Move rex_r into DisasContext target/i386: Move rex_w into DisasContext target/i386: Remove DisasContext.f_st as unused target/i386: Reduce DisasContext.flags to uint32_t target/i386: Reduce DisasContext.override to int8_t target/i386: Reduce DisasContext.prefix to uint8_t target/i386: Reduce DisasContext.vex_[lv] to uint8_t target/i386: Reduce DisasContext popl_esp_hack and rip_offset to uint8_t target/i386: Leave TF in DisasContext.flags target/i386: Reduce DisasContext jmp_opt, repz_opt to bool target/i386: Fix the comment for repz_opt target/i386: Reorder DisasContext members target/i386: Add stub generator for helper_set_dr target/i386: Assert !SVME for user-only target/i386: Assert !GUEST for user-only target/i386: Implement skinit in translate.c target/i386: Eliminate SVM helpers for user-only target/i386: Mark some helpers as noreturn target/i386: Simplify gen_debug usage target/i386: Tidy svm_check_intercept from tcg target/i386: Remove pc_start argument to gen_svm_check_intercept target/i386: Remove user stub for cpu_vmexit target/i386: Cleanup read_crN, write_crN, lmsw target/i386: Pass env to do_pause and do_hlt target/i386: Move invlpg, hlt, monitor, mwait to sysemu target/i386: Unify invlpg, invlpga target/i386: Inline user cpu_svm_check_intercept_param target/i386: Eliminate user stubs for read/write_crN, rd/wrmsr target/i386: Exit tb after wrmsr target/i386: Tidy gen_check_io target/i386: Pass in port to gen_check_io target/i386: Create helper_check_io target/i386: Move helper_check_io to sysemu target/i386: Remove user-only i/o stubs target/i386/cpu.h | 8 + target/i386/helper.h | 43 +- target/i386/tcg/helper-tcg.h | 5 +- target/i386/tcg/bpt_helper.c | 2 +- target/i386/tcg/excp_helper.c | 18 +- target/i386/tcg/misc_helper.c | 79 +--- target/i386/tcg/seg_helper.c | 43 -- target/i386/tcg/sysemu/misc_helper.c | 52 ++- target/i386/tcg/sysemu/seg_helper.c | 29 ++ target/i386/tcg/sysemu/svm_helper.c | 30 +- target/i386/tcg/translate.c | 883 ++++++++++++++++++----------------- target/i386/tcg/user/misc_stubs.c | 75 --- target/i386/tcg/user/svm_stubs.c | 76 --- target/i386/tcg/user/meson.build | 2 - 14 files changed, 592 insertions(+), 753 deletions(-) delete mode 100644 target/i386/tcg/user/misc_stubs.c delete mode 100644 target/i386/tcg/user/svm_stubs.c