[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 30/30] target/s390x: update maximum TCG model to
From: |
Aurelien Jarno |
Subject: |
[Qemu-devel] [PATCH v3 30/30] target/s390x: update maximum TCG model to z800 |
Date: |
Thu, 1 Jun 2017 00:01:29 +0200 |
At the same time fix the TCG version of get_max_cpu_model to return the
maximum model like on KVM. Remove the ETF2 and long-displacement
facilities from the additional features as it is included in the z800.
Signed-off-by: Aurelien Jarno <address@hidden>
---
target/s390x/cpu_models.c | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/target/s390x/cpu_models.c b/target/s390x/cpu_models.c
index fc3cb25cc3..c13bbd852c 100644
--- a/target/s390x/cpu_models.c
+++ b/target/s390x/cpu_models.c
@@ -668,8 +668,6 @@ static void add_qemu_cpu_model_features(S390FeatBitmap fbm)
static const int feats[] = {
S390_FEAT_STFLE,
S390_FEAT_EXTENDED_IMMEDIATE,
- S390_FEAT_EXTENDED_TRANSLATION_2,
- S390_FEAT_LONG_DISPLACEMENT,
S390_FEAT_LONG_DISPLACEMENT_FAST,
S390_FEAT_ETF2_ENH,
S390_FEAT_STORE_CLOCK_FAST,
@@ -696,9 +694,9 @@ static S390CPUModel *get_max_cpu_model(Error **errp)
if (kvm_enabled()) {
kvm_s390_get_host_cpu_model(&max_model, errp);
} else {
- /* TCG emulates a z900 (with some optional additional features) */
- max_model.def = &s390_cpu_defs[0];
- bitmap_copy(max_model.features, max_model.def->default_feat,
+ /* TCG emulates a z800 (with some optional additional features) */
+ max_model.def = s390_find_cpu_def(0x2066, 7, 3, NULL);
+ bitmap_copy(max_model.features, max_model.def->full_feat,
S390_FEAT_MAX);
add_qemu_cpu_model_features(max_model.features);
}
@@ -956,8 +954,9 @@ static void s390_qemu_cpu_model_initfn(Object *obj)
S390CPU *cpu = S390_CPU(obj);
cpu->model = g_malloc0(sizeof(*cpu->model));
- /* TCG emulates a z900 (with some optional additional features) */
- memcpy(&s390_qemu_cpu_defs, &s390_cpu_defs[0], sizeof(s390_qemu_cpu_defs));
+ /* TCG emulates a z800 (with some optional additional features) */
+ memcpy(&s390_qemu_cpu_defs, s390_find_cpu_def(0x2066, 7, 3, NULL),
+ sizeof(s390_qemu_cpu_defs));
add_qemu_cpu_model_features(s390_qemu_cpu_defs.full_feat);
cpu->model->def = &s390_qemu_cpu_defs;
bitmap_copy(cpu->model->features, cpu->model->def->default_feat,
--
2.11.0
- [Qemu-devel] [PATCH v3 00/30] target/s390x: fix, improve and implement some more instructions, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 24/30] target/s390x: implement PACK UNICODE, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 25/30] target/s390x: implement UNPACK ASCII, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 28/30] target/s390x: implement TRANSLATE ONE/TWO TO ONE/TWO, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 16/30] target/s390x: improve 24-bit and 31-bit lengths read/write, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 27/30] target/s390x: implement TEST DECIMAL, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 30/30] target/s390x: update maximum TCG model to z800,
Aurelien Jarno <=
- [Qemu-devel] [PATCH v3 26/30] target/s390x: implement UNPACK UNICODE, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 22/30] target/s390x: implement MOVE LONG UNICODE, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 21/30] target/s390x: implement COMPARE LOGICAL LONG UNICODE, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 29/30] target/s390x: mark ETF2 and ETF2-ENH facilities as available, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 23/30] target/s390x: implement PACK ASCII, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 01/30] target/s390x: remove dead code in translate.c, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 15/30] target/s390x: improve 24-bit and 31-bit addresses write, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 05/30] target/s390x: implement TEST ADDRESSING MODE, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 19/30] target/s390x: fix adj_len_to_page, Aurelien Jarno, 2017/05/31
- [Qemu-devel] [PATCH v3 04/30] target/s390x: implement TEST AND SET, Aurelien Jarno, 2017/05/31