Aurelien Jarno
3f4de6756c
target-s390x: implement TRANSLATE EXTENDED instruction
...
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>
2015-06-05 01:37:59 +02:00
Aurelien Jarno
54f0077509
target-s390x: implement TRANSLATE AND TEST instruction
...
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>
2015-06-05 01:37:59 +02:00
Aurelien Jarno
ed0bcecec1
target-s390x: implement LOAD FP INTEGER instructions
...
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>
2015-06-05 01:37:59 +02:00
Aurelien Jarno
a91a1b20a2
target-s390x: remove unused helpers
...
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Alexander Graf <agraf@suse.de>
2015-06-05 01:37:57 +02:00
Aurelien Jarno
d30107814c
target-s390x: optimize (negative-) abs computation
...
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>
2015-06-05 01:37:57 +02:00
Richard Henderson
9c3fd85b14
target-s390: Implement LURA, LURAG, STURG
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2015-02-03 12:06:37 -08:00
Richard Henderson
2ef6175aa7
tcg: Invert the inclusion of helper.h
...
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>
2014-05-28 09:33:54 -07:00
Richard Henderson
dc46d1c68a
target-s390x: Use mulu2 for mlgr insn
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2013-02-23 17:25:29 +00:00
Richard Henderson
26cc0a3fd1
target-s390: Use noreturn for exception and load_psw
...
Both always exit the cpu loop.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:46 -08:00
Richard Henderson
893e1660d5
target-s390: Use TCG_CALL_NO_WG for misc helpers
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:46 -08:00
Richard Henderson
c20fec4055
target-s390: Use TCG_CALL_NO_WG for integer helpers
...
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>
2013-01-05 12:18:46 -08:00
Richard Henderson
c482ea94ea
target-s390: Use TCG_CALL_NO_WG for floating-point helpers
...
None of them read or write tcg registers, but most can
raise fp exceptions.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:46 -08:00
Richard Henderson
d918a65c69
target-s390: Use TCG_CALL_NO_WG for memory helpers
...
Those that do not read or write tcg registers, but can
raise exceptions via memory faults.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:46 -08:00
Richard Henderson
b7886de3f3
target-s390: Perform COMPARE AND SWAP inline
...
Still no proper solution for CONFIG_USER_ONLY, but the system
version is significantly better.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:46 -08:00
Richard Henderson
411edc22cb
target-s390: Implement LOAD/SET FP AND SIGNAL
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:45 -08:00
Richard Henderson
99b4f24b3e
target-s390: Implement POPCNT
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:45 -08:00
Richard Henderson
2112bf1bfb
target-s390: Implement CONVERT FROM LOGICAL
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:44 -08:00
Richard Henderson
6ac1b45f9b
target-s390: Implement CONVERT TO LOGICAL
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:44 -08:00
Richard Henderson
dc458df91d
target-s390: Convert SERVC
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:43 -08:00
Richard Henderson
d14b3e09b2
target-s390: Convert STSI
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:43 -08:00
Richard Henderson
39a5003c89
target-s390: Convert STCKE
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:43 -08:00
Richard Henderson
3d596f4912
target-s390: Convert CSP
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:43 -08:00
Richard Henderson
204504e2fa
target-s390: Convert STURA
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:43 -08:00
Richard Henderson
5cc69c54f6
target-s390: Convert RRBE
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:43 -08:00
Richard Henderson
2bbde27f25
target-s390: Convert SSKE
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:43 -08:00
Richard Henderson
c4f0a863c3
target-s390: Convert SPT, STPT
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:42 -08:00
Richard Henderson
dd3eb7b54f
target-s390: Convert SCKC, STCKC
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:42 -08:00
Richard Henderson
434c91a5f4
target-s390: Convert STCK
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:42 -08:00
Richard Henderson
3528979951
target-s390: Convert SCK
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:42 -08:00
Richard Henderson
71bd666963
target-s390: Convert STIDP
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:42 -08:00
Richard Henderson
4600c994d9
target-s390: Convert SRST
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:42 -08:00
Richard Henderson
aa31bf6031
target-s390: Convert CLST, MVST
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:42 -08:00
Richard Henderson
374724f91a
target-s390: Convert CKSM
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:42 -08:00
Richard Henderson
6e2704e74d
target-s390: Convert IPM
...
Note that the previous placement of the PM field was incorrect.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:42 -08:00
Richard Henderson
8379bfdbca
target-s390: Convert LFPC, SFPC
...
Note that we were failing to set the rounding mode in fpu_status.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:41 -08:00
Richard Henderson
102bf2c635
target-s390: Convert FLOGR
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:41 -08:00
Richard Henderson
683bb9a888
target-s390: Convert CONVERT FROM FIXED
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:41 -08:00
Richard Henderson
68c8bd93cc
target-s390: Convert CONVERT TO FIXED
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:41 -08:00
Richard Henderson
24db8412ec
target-s390: Convert LOAD ZERO
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:41 -08:00
Richard Henderson
16d7b2a43b
target-s390: Convert FP SQUARE ROOT
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:41 -08:00
Richard Henderson
5d7fd045ca
target-s390: Convert FP LOAD COMPLIMENT, NEGATIVE, POSITIVE
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:41 -08:00
Richard Henderson
31aa97d1ed
target-s390: Convert TEST DATA CLASS
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:41 -08:00
Richard Henderson
722bfec331
target-s390: Convert MULTIPLY AND ADD, SUBTRACT
...
Use the new float*_muladd interface to softfloat.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:41 -08:00
Richard Henderson
83b00736f3
target-s390: Convert FP MULTIPLY
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:41 -08:00
Richard Henderson
f08a5c311d
target-s390: Convert FP DIVIDE
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:41 -08:00
Richard Henderson
1a800a2dce
target-s390: Convert FP SUBTRACT
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:41 -08:00
Richard Henderson
587626f8da
target-s390: Convert FP ADD, COMPARE, LOAD TEST/ROUND/LENGTHENED
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:40 -08:00
Richard Henderson
2ae6805906
target-s390: Convert STCM
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:40 -08:00
Richard Henderson
f3de39c485
target-s390: Convert COMPARE AND SWAP
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2013-01-05 12:18:40 -08:00
Richard Henderson
d8fe4a9c28
target-s390: Convert LRA
...
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>
2013-01-05 12:18:39 -08:00