summaryrefslogtreecommitdiffstats
path: root/target-s390x/helper.h
Commit message (Collapse)AuthorAgeFilesLines
* target-s390x: implement TRANSLATE EXTENDED instructionAurelien Jarno2015-06-051-0/+1
| | | | | | | | It is part of the basic zArchitecture instructions. Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Alexander Graf <agraf@suse.de>
* target-s390x: implement TRANSLATE AND TEST instructionAurelien Jarno2015-06-051-0/+1
| | | | | | | | | It is part of the basic zArchitecture instructions. Allow it to be call from EXECUTE. Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Signed-off-by: Alexander Graf <agraf@suse.de>
* target-s390x: implement LOAD FP INTEGER instructionsAurelien Jarno2015-06-051-0/+3
| | | | | | | | | This is needed to pass the gcc.c-torture/execute/ieee/20010114-2.c test in the gcc testsuite. Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Alexander Graf <agraf@suse.de>
* target-s390x: remove unused helpersAurelien Jarno2015-06-051-2/+0
| | | | | | Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Alexander Graf <agraf@suse.de>
* target-s390x: optimize (negative-) abs computationAurelien Jarno2015-06-051-2/+0
| | | | | | | | | Now that movcond exists, it's easy to write (negative-) absolute value using TCG code instead of an helper. Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Alexander Graf <agraf@suse.de>
* target-s390: Implement LURA, LURAG, STURGRichard Henderson2015-02-031-0/+3
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* tcg: Invert the inclusion of helper.hRichard Henderson2014-05-281-4/+0
| | | | | | | | | | Rather than include helper.h with N values of GEN_HELPER, include a secondary file that sets up the macros to include helper.h. This minimizes the files that must be rebuilt when changing the macros for file N. Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390x: Use mulu2 for mlgr insnRichard Henderson2013-02-231-1/+0
| | | | | Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* target-s390: Use noreturn for exception and load_pswRichard Henderson2013-01-051-2/+2
| | | | | | Both always exit the cpu loop. Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Use TCG_CALL_NO_WG for misc helpersRichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Use TCG_CALL_NO_WG for integer helpersRichard Henderson2013-01-051-4/+4
| | | | | | | The division routines do not read or write tcg registers, but can raise fixed-point divide exceptions. Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Use TCG_CALL_NO_WG for floating-point helpersRichard Henderson2013-01-051-39/+39
| | | | | | | None of them read or write tcg registers, but most can raise fp exceptions. Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Use TCG_CALL_NO_WG for memory helpersRichard Henderson2013-01-051-15/+15
| | | | | | | Those that do not read or write tcg registers, but can raise exceptions via memory faults. Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Perform COMPARE AND SWAP inlineRichard Henderson2013-01-051-3/+0
| | | | | | | Still no proper solution for CONFIG_USER_ONLY, but the system version is significantly better. Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Implement LOAD/SET FP AND SIGNALRichard Henderson2013-01-051-0/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Implement POPCNTRichard Henderson2013-01-051-0/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Implement CONVERT FROM LOGICALRichard Henderson2013-01-051-0/+3
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Implement CONVERT TO LOGICALRichard Henderson2013-01-051-0/+6
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert SERVCRichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert STSIRichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert STCKERichard Henderson2013-01-051-1/+0
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert CSPRichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert STURARichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert RRBERichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert SSKERichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert SPT, STPTRichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert SCKC, STCKCRichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert STCKRichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert SCKRichard Henderson2013-01-051-1/+0
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert STIDPRichard Henderson2013-01-051-1/+0
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert SRSTRichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert CLST, MVSTRichard Henderson2013-01-051-2/+2
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert CKSMRichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert IPMRichard Henderson2013-01-051-1/+0
| | | | | | Note that the previous placement of the PM field was incorrect. Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert LFPC, SFPCRichard Henderson2013-01-051-0/+1
| | | | | | Note that we were failing to set the rounding mode in fpu_status. Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert FLOGRRichard Henderson2013-01-051-1/+1
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert CONVERT FROM FIXEDRichard Henderson2013-01-051-6/+3
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert CONVERT TO FIXEDRichard Henderson2013-01-051-6/+6
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert LOAD ZERORichard Henderson2013-01-051-3/+0
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert FP SQUARE ROOTRichard Henderson2013-01-051-1/+3
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert FP LOAD COMPLIMENT, NEGATIVE, POSITIVERichard Henderson2013-01-051-6/+0
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert TEST DATA CLASSRichard Henderson2013-01-051-3/+3
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert MULTIPLY AND ADD, SUBTRACTRichard Henderson2013-01-051-4/+4
| | | | | | Use the new float*_muladd interface to softfloat. Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert FP MULTIPLYRichard Henderson2013-01-051-5/+5
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert FP DIVIDERichard Henderson2013-01-051-5/+3
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert FP SUBTRACTRichard Henderson2013-01-051-5/+3
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert FP ADD, COMPARE, LOAD TEST/ROUND/LENGTHENEDRichard Henderson2013-01-051-22/+15
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert STCMRichard Henderson2013-01-051-2/+0
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert COMPARE AND SWAPRichard Henderson2013-01-051-2/+2
| | | | Signed-off-by: Richard Henderson <rth@twiddle.net>
* target-s390: Convert LRARichard Henderson2013-01-051-1/+1
| | | | | | | Note that truncating the store to r1 based on PSW_MASK_64 is incorrect. We always modify the entire register. Signed-off-by: Richard Henderson <rth@twiddle.net>
OpenPOWER on IntegriCloud