aboutsummaryrefslogtreecommitdiff
path: root/risugen_ppc64.pm
AgeCommit message (Collapse)Author
2017-11-21risugen/risugen_$arch: factor out instruction selectionAlex Bennée
This moves the instruction selection to the common code and passes a list of selection keys to write_test_code instead. This will allow us to add selection features to the common code later. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-id: 20171031145444.13766-6-alex.bennee@linaro.org
2017-05-30risugen, risugen_ppc64.pm: Add support ppc64 (big-endian)Jose Ricardo Ziviani
This commit adds an option to risugen in order to give the opportunity to generated big-endian instructions. By passing --be, users force risugen to generated big-endian instructions for ppc64. ./risugen --be --numinsns 1000 --pattern "ADD" ppc64.risu test.bin ./risugen --numinsns 1000 --pattern "ADD" ppc64.risu test.bin Signed-off-by: Jose Ricardo Ziviani <joserz@linux.vnet.ibm.com> Message-id: 1495739423-32326-4-git-send-email-joserz@linux.vnet.ibm.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-05-30risugen_ppc64: Load random 128-bit data to vector registersJose Ricardo Ziviani
Signed-off-by: Jose Ricardo Ziviani <joserz@linux.vnet.ibm.com> Message-id: 1495739423-32326-2-git-send-email-joserz@linux.vnet.ibm.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-02-28risugen_ppc64: Remove unused codeJose Ricardo Ziviani
Because we don't support custom fpsrc value yet it's better to remove that code. Signed-off-by: Jose Ricardo Ziviani <joserz@linux.vnet.ibm.com> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-02-10Move more common simple utility functions to risugen_commonPeter Maydell
More simple utility routines that can be shared. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-02-10Move eval_with_fields to risugen_commonPeter Maydell
eval_with_fields is identical in all backends; move it to the common file. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-02-10Move progress bar functions to risugen_commonPeter Maydell
The progress bar functions are the same in every backend, so move them to the common file. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-02-10Create new risugen_common module and put some functions in itPeter Maydell
Create a new risugen_common module which we can use to store utility functions that any CPU-specific backend might need to use. Start it off with the implementations of open_bin(), close_bin(), insn32() and insn16(), and remove those from the per-CPU files. This requires us also to abstract out a way for the CPU backend to specify whether it wants insn32 and insn16 to write big or little endian values, so create one. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-02-10risu_ppc64le: remove aarch64 related commentsNikunj A Dadhania
Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com> Message-id: 1486619931-1086-4-git-send-email-nikunj@linux.vnet.ibm.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-02-10risu_ppc64le: zero the xer registerNikunj A Dadhania
Observed failures running with P9 mambo model, and figured out that the xer wasn't initialized. Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com> Message-id: 1486619931-1086-3-git-send-email-nikunj@linux.vnet.ibm.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-02-10risu_ppc64le: set r23 as the comment saysNikunj A Dadhania
Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com> Message-id: 1486619931-1086-2-git-send-email-nikunj@linux.vnet.ibm.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-02-07risu_ppc64le: implement FP random data for test improvementJose Ricardo Ziviani
This commit replaces the simple FP data written for tests for a randomically generated one. This functionality stores the same data in FP register and VSX[VRB+32] registers. Signed-off-by: Jose Ricardo Ziviani <joserz@linux.vnet.ibm.com> Message-id: 1486174642-14883-5-git-send-email-joserz@linux.vnet.ibm.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-02-07risu_ppc64le: implement sign extend for small neg constantsJose Ricardo Ziviani
Signed-off-by: Jose Ricardo Ziviani <joserz@linux.vnet.ibm.com> Message-id: 1486174642-14883-4-git-send-email-joserz@linux.vnet.ibm.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-02-07risu_ppc64le: fix 32-bit mov immediateJose Ricardo Ziviani
Two instructions are necessary but the high value should be written first, shifted 16 bit left, and then or'ed the lower value. This commit fixes the problem. Signed-off-by: Jose Ricardo Ziviani <joserz@linux.vnet.ibm.com> Message-id: 1486174642-14883-3-git-send-email-joserz@linux.vnet.ibm.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2016-11-07Implement risugen module for PPC64Jose Ricardo Ziviani
Signed-off-by: Jose Ricardo Ziviani <joserz@linux.vnet.ibm.com> Message-id: 1478452528-13684-9-git-send-email-joserz@linux.vnet.ibm.com [PMM: use 'sort keys %insn_details'] Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>