[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 02/38] util: Add cpuinfo-ppc.c
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH v2 02/38] util: Add cpuinfo-ppc.c |
Date: |
Mon, 19 Jun 2023 12:37:26 +0200 |
User-agent: |
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 |
On 9/6/23 04:23, Richard Henderson wrote:
Move the code from tcg/. Fix a bug in that PPC_FEATURE2_ARCH_3_10
is actually spelled PPC_FEATURE2_ARCH_3_1.
This is rather confusing.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
host/include/ppc/host/cpuinfo.h | 29 ++++++++++++++++
host/include/ppc64/host/cpuinfo.h | 1 +
tcg/ppc/tcg-target.h | 16 ++++-----
util/cpuinfo-ppc.c | 57 +++++++++++++++++++++++++++++++
tcg/ppc/tcg-target.c.inc | 44 +-----------------------
util/meson.build | 2 ++
6 files changed, 98 insertions(+), 51 deletions(-)
create mode 100644 host/include/ppc/host/cpuinfo.h
create mode 100644 host/include/ppc64/host/cpuinfo.h
create mode 100644 util/cpuinfo-ppc.c
diff --git a/host/include/ppc/host/cpuinfo.h b/host/include/ppc/host/cpuinfo.h
new file mode 100644
index 0000000000..7ec252ef52
--- /dev/null
+++ b/host/include/ppc/host/cpuinfo.h
@@ -0,0 +1,29 @@
+/*
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ * Host specific cpu indentification for ppc.
+ */
+
+#ifndef HOST_CPUINFO_H
+#define HOST_CPUINFO_H
+
+/* Digested version of <cpuid.h> */
+
+#define CPUINFO_ALWAYS (1u << 0) /* so cpuinfo is nonzero */
+#define CPUINFO_V2_06 (1u << 1)
+#define CPUINFO_V2_07 (1u << 2)
+#define CPUINFO_V3_00 (1u << 3)
+#define CPUINFO_V3_10 (1u << 4)
Could we define as CPUINFO_V3_1 ...
+#define CPUINFO_ISEL (1u << 5)
+#define CPUINFO_ALTIVEC (1u << 6)
+#define CPUINFO_VSX (1u << 7)
-#define have_isa_2_06 (have_isa >= tcg_isa_2_06)
-#define have_isa_2_07 (have_isa >= tcg_isa_2_07)
-#define have_isa_3_00 (have_isa >= tcg_isa_3_00)
-#define have_isa_3_10 (have_isa >= tcg_isa_3_10)
+#define have_isa_2_06 (cpuinfo & CPUINFO_V2_06)
+#define have_isa_2_07 (cpuinfo & CPUINFO_V2_07)
+#define have_isa_3_00 (cpuinfo & CPUINFO_V3_00)
+#define have_isa_3_10 (cpuinfo & CPUINFO_V3_10)
... and have_isa_3_1 instead?
Otherwise,
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
- [PATCH v2 00/38] crypto: Provide aes-round.h and host accel, Richard Henderson, 2023/06/08
- [PATCH v2 02/38] util: Add cpuinfo-ppc.c, Richard Henderson, 2023/06/08
- [PATCH v2 01/38] tcg/ppc: Define _CALL_AIX for clang on ppc64(be), Richard Henderson, 2023/06/08
- [PATCH v2 03/38] tests/multiarch: Add test-aes, Richard Henderson, 2023/06/08
- [PATCH v2 04/38] target/arm: Move aesmc and aesimc tables to crypto/aes.c, Richard Henderson, 2023/06/08
- [PATCH v2 07/38] target/i386: Use aesenc_SB_SR_AK, Richard Henderson, 2023/06/08