1
Try #2, with the compile failure in kvm32.c fixed
1
Squashed in a trivial fix for 32-bit hosts:
2
(trivial change, not resending patches)
3
2
4
thanks
3
--- a/target/arm/mve_helper.c
4
+++ b/target/arm/mve_helper.c
5
@@ -XXX,XX +XXX,XX @@ DO_LDAV(vmlsldavxsw, 4, int32_t, true, +=, -=)
6
acc = EVENACC(acc, TO128(n[H##ESIZE(e + 1 * XCHG)] * \
7
m[H##ESIZE(e)])); \
8
} \
9
- acc = int128_add(acc, 1 << 7); \
10
+ acc = int128_add(acc, int128_make64(1 << 7)); \
11
} \
12
} \
13
mve_advance_vpt(env); \
14
5
-- PMM
15
-- PMM
6
16
7
The following changes since commit 98bfaac788be0ca63d7d010c8d4ba100ff1d8278:
17
The following changes since commit 53f306f316549d20c76886903181413d20842423:
8
18
9
Merge remote-tracking branch 'remotes/armbru/tags/pull-qapi-2017-09-01-v3' into staging (2017-09-04 13:28:09 +0100)
19
Merge remote-tracking branch 'remotes/ehabkost-gl/tags/x86-next-pull-request' into staging (2021-06-21 11:26:04 +0100)
10
20
11
are available in the git repository at:
21
are available in the Git repository at:
12
22
13
git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20170904-1
23
https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20210624
14
24
15
for you to fetch changes up to 0b8095ec9e924dc00636ab2069d88dec6592a75d:
25
for you to fetch changes up to 90a76c6316cfe6416fc33814a838fb3928f746ee:
16
26
17
arm_gicv3_kvm: Fix compile warning (2017-09-04 15:21:56 +0100)
27
docs/system: arm: Add nRF boards description (2021-06-24 14:58:48 +0100)
18
28
19
----------------------------------------------------------------
29
----------------------------------------------------------------
20
target-arm:
30
target-arm queue:
21
* collection of M profile cleanups and minor bugfixes
31
* Don't require 'virt' board to be compiled in for ACPI GHES code
22
* loader: handle ELF files with overlapping zero-init data
32
* docs: Document which architecture extensions we emulate
23
* virt: allow PMU instantiation with userspace irqchip
33
* Fix bugs in M-profile FPCXT_NS accesses
24
* wdt_aspeed: Add support for the reset width register
34
* First slice of MVE patches
25
* cpu: Define new cpu_transaction_failed() hook
35
* Implement MTE3
26
* arm: Support generating CPU exceptions on memory
36
* docs/system: arm: Add nRF boards description
27
transaction failures (bus faults)
28
* Mark some SoC devices as not user-creatable
29
* arm: Fix aa64 ldp register writeback
30
* arm_gicv3_kvm: Fix compile warning
31
37
32
----------------------------------------------------------------
38
----------------------------------------------------------------
33
Andrew Jeffery (2):
39
Alexandre Iooss (1):
34
watchdog: wdt_aspeed: Add support for the reset width register
40
docs/system: arm: Add nRF boards description
35
aspeed_soc: Propagate silicon-rev to watchdog
36
41
37
Andrew Jones (4):
42
Peter Collingbourne (1):
38
hw/arm/virt: add pmu interrupt state
43
target/arm: Implement MTE3
39
target/arm/kvm: pmu: split init and set-irq stages
40
hw/arm/virt: allow pmu instantiation with userspace irqchip
41
target/arm/kvm: pmu: improve error handling
42
44
43
Peter Maydell (25):
45
Peter Maydell (55):
44
target/arm: Use MMUAccessType enum rather than int
46
hw/acpi: Provide stub version of acpi_ghes_record_errors()
45
target/arm: Don't trap WFI/WFE for M profile
47
hw/acpi: Provide function acpi_ghes_present()
46
target/arm: Consolidate PMSA handling in get_phys_addr()
48
target/arm: Use acpi_ghes_present() to see if we report ACPI memory errors
47
target/arm: Tighten up Thumb decode where new v8M insns will be
49
docs/system/arm: Document which architecture extensions we emulate
48
hw/intc/armv7m_nvic.c: Remove out of date comment
50
target/arm/translate-vfp.c: Whitespace fixes
49
target/arm: Remove incorrect comment about MPU_CTRL
51
target/arm: Handle FPU being disabled in FPCXT_NS accesses
50
target/arm: Fix outdated comment about exception exit
52
target/arm: Don't NOCP fault for FPCXT_NS accesses
51
target/arm: Define and use XPSR bit masks
53
target/arm: Handle writeback in VLDR/VSTR sysreg with no memory access
52
target/arm: Don't store M profile PRIMASK and FAULTMASK in daif
54
target/arm: Factor FP context update code out into helper function
53
target/arm: Don't use cpsr_write/cpsr_read to transfer M profile XPSR
55
target/arm: Split vfp_access_check() into A and M versions
54
target/arm: Make arm_cpu_dump_state() handle the M-profile XPSR
56
target/arm: Handle FPU check for FPCXT_NS insns via vfp_access_check_m()
55
target/arm: Don't calculate lr in arm_v7m_cpu_do_interrupt() until needed
57
target/arm: Implement MVE VLDR/VSTR (non-widening forms)
56
target/arm: Create and use new function arm_v7m_is_handler_mode()
58
target/arm: Implement widening/narrowing MVE VLDR/VSTR insns
57
armv7m_nvic.h: Move from include/hw/arm to include/hw/intc
59
target/arm: Implement MVE VCLZ
58
nvic: Implement "user accesses BusFault" SCS region behaviour
60
target/arm: Implement MVE VCLS
59
loader: Handle ELF files with overlapping zero-initialized data
61
target/arm: Implement MVE VREV16, VREV32, VREV64
60
loader: Ignore zero-sized ELF segments
62
target/arm: Implement MVE VMVN (register)
61
memory.h: Move MemTxResult type to memattrs.h
63
target/arm: Implement MVE VABS
62
cpu: Define new cpu_transaction_failed() hook
64
target/arm: Implement MVE VNEG
63
cputlb: Support generating CPU exceptions on memory transaction failures
65
tcg: Make gen_dup_i32/i64() public as tcg_gen_dup_i32/i64
64
boards.h: Define new flag ignore_memory_transaction_failures
66
target/arm: Implement MVE VDUP
65
hw/arm: Set ignore_memory_transaction_failures for most ARM boards
67
target/arm: Implement MVE VAND, VBIC, VORR, VORN, VEOR
66
target/arm: Factor out fault delivery code
68
target/arm: Implement MVE VADD, VSUB, VMUL
67
target/arm: Allow deliver_fault() caller to specify EA bit
69
target/arm: Implement MVE VMULH
68
target/arm: Implement new do_transaction_failed hook
70
target/arm: Implement MVE VRMULH
71
target/arm: Implement MVE VMAX, VMIN
72
target/arm: Implement MVE VABD
73
target/arm: Implement MVE VHADD, VHSUB
74
target/arm: Implement MVE VMULL
75
target/arm: Implement MVE VMLALDAV
76
target/arm: Implement MVE VMLSLDAV
77
target/arm: Implement MVE VRMLALDAVH, VRMLSLDAVH
78
target/arm: Implement MVE VADD (scalar)
79
target/arm: Implement MVE VSUB, VMUL (scalar)
80
target/arm: Implement MVE VHADD, VHSUB (scalar)
81
target/arm: Implement MVE VBRSR
82
target/arm: Implement MVE VPST
83
target/arm: Implement MVE VQADD and VQSUB
84
target/arm: Implement MVE VQDMULH and VQRDMULH (scalar)
85
target/arm: Implement MVE VQDMULL scalar
86
target/arm: Implement MVE VQDMULH, VQRDMULH (vector)
87
target/arm: Implement MVE VQADD, VQSUB (vector)
88
target/arm: Implement MVE VQSHL (vector)
89
target/arm: Implement MVE VQRSHL
90
target/arm: Implement MVE VSHL insn
91
target/arm: Implement MVE VRSHL
92
target/arm: Implement MVE VQDMLADH and VQRDMLADH
93
target/arm: Implement MVE VQDMLSDH and VQRDMLSDH
94
target/arm: Implement MVE VQDMULL (vector)
95
target/arm: Implement MVE VRHADD
96
target/arm: Implement MVE VADC, VSBC
97
target/arm: Implement MVE VCADD
98
target/arm: Implement MVE VHCADD
99
target/arm: Implement MVE VADDV
100
target/arm: Make VMOV scalar <-> gpreg beatwise for MVE
69
101
70
Philippe Mathieu-Daudé (1):
102
docs/system/arm/emulation.rst | 103 ++++
71
hw/arm: use defined type name instead of hard-coded string
103
docs/system/arm/nrf.rst | 51 ++
104
docs/system/target-arm.rst | 7 +
105
include/hw/acpi/ghes.h | 9 +
106
include/tcg/tcg-op.h | 8 +
107
include/tcg/tcg.h | 1 -
108
target/arm/helper-mve.h | 357 +++++++++++++
109
target/arm/helper.h | 2 +
110
target/arm/internals.h | 11 +
111
target/arm/translate-a32.h | 3 +
112
target/arm/translate.h | 10 +
113
target/arm/m-nocp.decode | 24 +
114
target/arm/mve.decode | 240 +++++++++
115
target/arm/vfp.decode | 14 -
116
hw/acpi/ghes-stub.c | 22 +
117
hw/acpi/ghes.c | 17 +
118
target/arm/cpu64.c | 2 +-
119
target/arm/kvm64.c | 6 +-
120
target/arm/mte_helper.c | 82 +--
121
target/arm/mve_helper.c | 1160 +++++++++++++++++++++++++++++++++++++++++
122
target/arm/translate-m-nocp.c | 550 +++++++++++++++++++
123
target/arm/translate-mve.c | 759 +++++++++++++++++++++++++++
124
target/arm/translate-vfp.c | 741 +++++++-------------------
125
tcg/tcg-op-gvec.c | 20 +-
126
MAINTAINERS | 1 +
127
hw/acpi/meson.build | 6 +-
128
target/arm/meson.build | 1 +
129
27 files changed, 3578 insertions(+), 629 deletions(-)
130
create mode 100644 docs/system/arm/emulation.rst
131
create mode 100644 docs/system/arm/nrf.rst
132
create mode 100644 target/arm/helper-mve.h
133
create mode 100644 hw/acpi/ghes-stub.c
134
create mode 100644 target/arm/mve_helper.c
72
135
73
Pranith Kumar (1):
74
arm_gicv3_kvm: Fix compile warning
75
76
Richard Henderson (1):
77
target/arm: Fix aa64 ldp register writeback
78
79
Thomas Huth (2):
80
hw/arm/aspeed_soc: Mark devices as user_creatable = false
81
hw/arm/digic: Mark device with user_creatable = false
82
83
include/exec/memattrs.h | 10 +++
84
include/exec/memory.h | 10 ---
85
include/hw/arm/armv7m.h | 2 +-
86
include/hw/boards.h | 11 +++
87
include/hw/elf_ops.h | 72 +++++++++++++--
88
include/hw/{arm => intc}/armv7m_nvic.h | 0
89
include/hw/watchdog/wdt_aspeed.h | 2 +
90
include/qom/cpu.h | 27 ++++++
91
softmmu_template.h | 4 +-
92
target/arm/cpu.h | 56 +++++++++---
93
target/arm/internals.h | 15 +++-
94
target/arm/kvm_arm.h | 9 +-
95
accel/tcg/cputlb.c | 32 ++++++-
96
hw/arm/armv7m.c | 4 +-
97
hw/arm/aspeed.c | 3 +
98
hw/arm/aspeed_soc.c | 4 +
99
hw/arm/collie.c | 1 +
100
hw/arm/cubieboard.c | 1 +
101
hw/arm/digic.c | 2 +
102
hw/arm/digic_boards.c | 1 +
103
hw/arm/exynos4210.c | 4 +-
104
hw/arm/exynos4_boards.c | 2 +
105
hw/arm/gumstix.c | 2 +
106
hw/arm/highbank.c | 13 ++-
107
hw/arm/imx25_pdk.c | 1 +
108
hw/arm/integratorcp.c | 1 +
109
hw/arm/kzm.c | 1 +
110
hw/arm/mainstone.c | 1 +
111
hw/arm/musicpal.c | 1 +
112
hw/arm/netduino2.c | 1 +
113
hw/arm/nseries.c | 2 +
114
hw/arm/omap_sx1.c | 2 +
115
hw/arm/palm.c | 1 +
116
hw/arm/raspi.c | 1 +
117
hw/arm/realview.c | 10 ++-
118
hw/arm/sabrelite.c | 1 +
119
hw/arm/spitz.c | 4 +
120
hw/arm/stellaris.c | 2 +
121
hw/arm/tosa.c | 1 +
122
hw/arm/versatilepb.c | 2 +
123
hw/arm/vexpress.c | 7 +-
124
hw/arm/virt.c | 12 ++-
125
hw/arm/xilinx_zynq.c | 15 ++--
126
hw/arm/xlnx-ep108.c | 2 +
127
hw/arm/z2.c | 1 +
128
hw/intc/arm_gicv3_kvm.c | 2 +-
129
hw/intc/armv7m_nvic.c | 68 +++++++++-----
130
hw/watchdog/wdt_aspeed.c | 93 ++++++++++++++++---
131
qom/cpu.c | 7 ++
132
target/arm/cpu.c | 8 +-
133
target/arm/helper.c | 124 ++++++++++++-------------
134
target/arm/kvm.c | 6 +-
135
target/arm/kvm32.c | 8 +-
136
target/arm/kvm64.c | 63 +++++++------
137
target/arm/machine.c | 54 ++++++++++-
138
target/arm/op_helper.c | 160 ++++++++++++++++++++++-----------
139
target/arm/translate-a64.c | 29 +++---
140
target/arm/translate.c | 106 ++++++++++++++++------
141
58 files changed, 795 insertions(+), 289 deletions(-)
142
rename include/hw/{arm => intc}/armv7m_nvic.h (100%)
143
diff view generated by jsdifflib