From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 56E98355051; Wed, 12 Nov 2025 18:25:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=217.140.110.172 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762971942; cv=none; b=RlfJN+Qcc3UkYf3YEkihKnGK5zga6ukmJmST/9E3HhkT8mHswoLqE9jHfGcOdgrFeqaXevogrisr3N6VYPhPDdn34jx2nGyFpbhSPUaB2ChGOQq3kegXnxboYQUpOlumWKCv8IDX2u44T0ChVmi/7wDKp6+1y+ZplKaLlTbyA2c= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762971942; c=relaxed/simple; bh=LxrG4la+UU2a+kngmi6pw8OHWq6AgFvXmkETg/5yk98=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=vDdxRtlknAqCBYfKE9WqAaxa2nT7vqeRV10BvuJ9l5KdF1pQZzz4Fev/h7V6nlcYaapJIwz7g9KEPU/sYCjU1McxcJd/wIQ2eLpMA+BdVjZ78qaMnwc5yzhcwjkJ4N6kJY5G6nTpSQsm8HprbknONhjwFU7F2RlMpE5EtL8Vbn8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; arc=none smtp.client-ip=217.140.110.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1C4501691; Wed, 12 Nov 2025 10:25:33 -0800 (PST) Received: from e132581.arm.com (e132581.arm.com [10.1.196.87]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id DB4283F63F; Wed, 12 Nov 2025 10:25:38 -0800 (PST) From: Leo Yan Date: Wed, 12 Nov 2025 18:24:48 +0000 Subject: [PATCH v3 22/25] perf sort: Support sort ASE and SME Precedence: bulk X-Mailing-List: linux-perf-users@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20251112-perf_support_arm_spev1-3-v3-22-e63c9829f9d9@arm.com> References: <20251112-perf_support_arm_spev1-3-v3-0-e63c9829f9d9@arm.com> In-Reply-To: <20251112-perf_support_arm_spev1-3-v3-0-e63c9829f9d9@arm.com> To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Jiri Olsa , Ian Rogers , Adrian Hunter , James Clark , Mark Rutland Cc: Arnaldo Carvalho de Melo , linux-perf-users@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Leo Yan X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1762971891; l=1741; i=leo.yan@arm.com; s=20250604; h=from:subject:message-id; bh=LxrG4la+UU2a+kngmi6pw8OHWq6AgFvXmkETg/5yk98=; b=3TNxdgsR0iBsThzYaTBhdiJqn4PfQb5ccKGAfXOwWG1R8thb/K8ZsSarDKxp172ZFoE7uuRvu ZoDoXWrzFXvC9Muuet5X8zj2QxvT33z8CtPU4n5pKQlDngD4tC+9e+q X-Developer-Key: i=leo.yan@arm.com; a=ed25519; pk=k4BaDbvkCXzBFA7Nw184KHGP5thju8lKqJYIrOWxDhI= Support sort Advance SIMD extension (ASE) and SME. Signed-off-by: Leo Yan --- tools/perf/util/sample.h | 12 +++++++++--- tools/perf/util/sort.c | 6 +++++- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/tools/perf/util/sample.h b/tools/perf/util/sample.h index fae834144ef42105d08a59704ee75cd4852bbc5a..3b22cc2f7ad6ba1dc53b5d9ffff2a4e47c89612a 100644 --- a/tools/perf/util/sample.h +++ b/tools/perf/util/sample.h @@ -67,12 +67,18 @@ struct aux_sample { }; struct simd_flags { - u8 arch:1, /* architecture (isa) */ - pred:2; /* predication */ + u8 arch: 2, /* architecture (isa) */ + pred: 2, /* predication */ + resv: 4; /* reserved */ }; /* simd architecture flags */ -#define SIMD_OP_FLAGS_ARCH_SVE 0x01 /* ARM SVE */ +enum simd_op_flags { + SIMD_OP_FLAGS_ARCH_NONE = 0x0, /* No SIMD operation */ + SIMD_OP_FLAGS_ARCH_SVE, /* Arm SVE */ + SIMD_OP_FLAGS_ARCH_SME, /* Arm SME */ + SIMD_OP_FLAGS_ARCH_ASE, /* Arm Advanced SIMD */ +}; /* simd predicate flags */ #define SIMD_OP_FLAGS_PRED_PARTIAL 0x01 /* partial predicate */ diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c index f3a565b0e2307a8adf159725f803df5fef0dff83..ad98d5b75f34b49cd39e30cba997a614654eebcb 100644 --- a/tools/perf/util/sort.c +++ b/tools/perf/util/sort.c @@ -193,8 +193,12 @@ static const char *hist_entry__get_simd_name(struct simd_flags *simd_flags) { u64 arch = simd_flags->arch; - if (arch & SIMD_OP_FLAGS_ARCH_SVE) + if (arch == SIMD_OP_FLAGS_ARCH_SVE) return "SVE"; + else if (arch == SIMD_OP_FLAGS_ARCH_SME) + return "SME"; + else if (arch == SIMD_OP_FLAGS_ARCH_ASE) + return "ASE"; else return "n/a"; } -- 2.34.1