unicorn/qemu/target
Aaron Lindsay OS 8d7bb2cab3
target/arm: Don't clear supported PMU events when initializing PMCEID1
A bug was introduced during a respin of:

commit 57a4a11b2b281bb548b419ca81bfafb214e4c77a
target/arm: Add array for supported PMU events, generate PMCEID[01]_EL0

This patch introduced two calls to get_pmceid() during CPU
initialization - one each for PMCEID0 and PMCEID1. In addition to
building the register values, get_pmceid() clears an internal array
mapping event numbers to their implementations (supported_event_map)
before rebuilding it. This is an optimization since much of the logic is
shared. However, since it was called twice, the contents of
supported_event_map reflect only the events in PMCEID1 (the second call
to get_pmceid()).

Fix this bug by moving the initialization of PMCEID0 and PMCEID1 back
into a single function call, and name it more appropriately since it is
doing more than simply generating the contents of the PMCEID[01]
registers.

Backports commit bf8d09694ccc07487cd73d7562081fdaec3370c8 from qemu
2019-01-29 17:12:23 -05:00
..
arm target/arm: Don't clear supported PMU events when initializing PMCEID1 2019-01-29 17:12:23 -05:00
i386 target: Resolve repeated typedef warnings 2019-01-22 20:27:35 -05:00
m68k target: Resolve repeated typedef warnings 2019-01-22 20:27:35 -05:00
mips target/mips: Add I6500 core configuration 2019-01-25 13:46:18 -05:00
sparc target: Resolve repeated typedef warnings 2019-01-22 20:27:35 -05:00