Statistics
| Branch: | Revision:

root / target-s390x / helper.h @ 6a1751b7

History | View | Annotate | Download (6.4 kB)

# Date Author Comment
dc46d1c6 02/23/2013 07:25 pm Richard Henderson

target-s390x: Use mulu2 for mlgr insn

Signed-off-by: Richard Henderson <>
Signed-off-by: Blue Swirl <>

b7886de3 01/05/2013 10:18 pm Richard Henderson

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 <>

d918a65c 01/05/2013 10:18 pm Richard Henderson

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 <>

c482ea94 01/05/2013 10:18 pm Richard Henderson

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 <>

c20fec40 01/05/2013 10:18 pm Richard Henderson

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 <>

893e1660 01/05/2013 10:18 pm Richard Henderson

target-s390: Use TCG_CALL_NO_WG for misc helpers

Signed-off-by: Richard Henderson <>

26cc0a3f 01/05/2013 10:18 pm Richard Henderson

target-s390: Use noreturn for exception and load_psw

Both always exit the cpu loop.

Signed-off-by: Richard Henderson <>

99b4f24b 01/05/2013 10:18 pm Richard Henderson

target-s390: Implement POPCNT

Signed-off-by: Richard Henderson <>

411edc22 01/05/2013 10:18 pm Richard Henderson

target-s390: Implement LOAD/SET FP AND SIGNAL

Signed-off-by: Richard Henderson <>

6ac1b45f 01/05/2013 10:18 pm Richard Henderson

target-s390: Implement CONVERT TO LOGICAL

Signed-off-by: Richard Henderson <>

2112bf1b 01/05/2013 10:18 pm Richard Henderson

target-s390: Implement CONVERT FROM LOGICAL

Signed-off-by: Richard Henderson <>

2bbde27f 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert SSKE

Signed-off-by: Richard Henderson <>

5cc69c54 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert RRBE

Signed-off-by: Richard Henderson <>

204504e2 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert STURA

Signed-off-by: Richard Henderson <>

3d596f49 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert CSP

Signed-off-by: Richard Henderson <>

39a5003c 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert STCKE

Signed-off-by: Richard Henderson <>

d14b3e09 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert STSI

Signed-off-by: Richard Henderson <>

dc458df9 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert SERVC

Signed-off-by: Richard Henderson <>

6e2704e7 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert IPM

Note that the previous placement of the PM field was incorrect.

Signed-off-by: Richard Henderson <>

374724f9 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert CKSM

Signed-off-by: Richard Henderson <>

aa31bf60 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert CLST, MVST

Signed-off-by: Richard Henderson <>

4600c994 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert SRST

Signed-off-by: Richard Henderson <>

71bd6669 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert STIDP

Signed-off-by: Richard Henderson <>

35289799 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert SCK

Signed-off-by: Richard Henderson <>

434c91a5 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert STCK

Signed-off-by: Richard Henderson <>

dd3eb7b5 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert SCKC, STCKC

Signed-off-by: Richard Henderson <>

c4f0a863 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert SPT, STPT

Signed-off-by: Richard Henderson <>

1a800a2d 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert FP SUBTRACT

Signed-off-by: Richard Henderson <>

f08a5c31 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert FP DIVIDE

Signed-off-by: Richard Henderson <>

83b00736 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert FP MULTIPLY

Signed-off-by: Richard Henderson <>

722bfec3 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert MULTIPLY AND ADD, SUBTRACT

Use the new float*_muladd interface to softfloat.

Signed-off-by: Richard Henderson <>

31aa97d1 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert TEST DATA CLASS

Signed-off-by: Richard Henderson <>

5d7fd045 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert FP LOAD COMPLIMENT, NEGATIVE, POSITIVE

Signed-off-by: Richard Henderson <>

16d7b2a4 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert FP SQUARE ROOT

Signed-off-by: Richard Henderson <>

24db8412 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert LOAD ZERO

Signed-off-by: Richard Henderson <>

68c8bd93 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert CONVERT TO FIXED

Signed-off-by: Richard Henderson <>

683bb9a8 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert CONVERT FROM FIXED

Signed-off-by: Richard Henderson <>

102bf2c6 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert FLOGR

Signed-off-by: Richard Henderson <>

8379bfdb 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert LFPC, SFPC

Note that we were failing to set the rounding mode in fpu_status.

Signed-off-by: Richard Henderson <>

f3de39c4 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert COMPARE AND SWAP

Signed-off-by: Richard Henderson <>

2ae68059 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert STCM

Signed-off-by: Richard Henderson <>

587626f8 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert FP ADD, COMPARE, LOAD TEST/ROUND/LENGTHENED

Signed-off-by: Richard Henderson <>

d8fe4a9c 01/05/2013 10:18 pm Richard Henderson

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 <>

58a9e35b 01/05/2013 10:18 pm Richard Henderson

target-s390: Convert INSERT CHARACTERS UNDER MASK

Change the CC handling to be more like TEST UNDER MASK, with val & mask.
This lets us handle ICMH much more like ICM.

Signed-off-by: Richard Henderson <>

4e4bb438 01/05/2013 10:00 pm Richard Henderson

target-s390: Convert ADD LOGICAL CARRY and SUBTRACT LOGICAL BORROW

I'm resonably certain that the carry/borrow-out condition for both
helpers was incorrect, failing to take into account the carry-in.
Adding the new CC_OP codes also allows removing the awkward interface...

891452e5 01/05/2013 10:00 pm Richard Henderson

target-s390: Convert DIVIDE

Signed-off-by: Richard Henderson <>

1ac5889f 01/05/2013 10:00 pm Richard Henderson

target-s390: Convert 64-bit MULTIPLY LOGICAL

Use a new "retxl" member of CPUS290XState to return the "eXtra Low" part
of a 128-bit value. That said, this will get used when two independent
values need returning (e.g. quotient+remainder) as well.

At the same time, shuffle the elements of CPUS390XState to get this new...

7e68da2a 01/05/2013 10:00 pm Richard Henderson

target-s390: Register helpers

Which highlights a lot of cc helpers that no longer exist.

Signed-off-by: Richard Henderson <>

022c62cb 12/19/2012 09:31 am Paolo Bonzini

exec: move include files to include/exec/

Signed-off-by: Paolo Bonzini <>

9995567b 10/28/2012 03:54 pm Aurelien Jarno

target-s390x: rename helper flags

Rename helper flags to the new ones. This is purely a mechanical change,
it's possible to use better flags by looking at the helpers.

Cc: Alexander Graf <>
Reviewed-by: Richard Henderson <>
Signed-off-by: Aurelien Jarno <>

089f5c06 09/10/2012 02:38 pm Blue Swirl

target-s390x: avoid AREG0 for misc helpers

Make misc helpers take a parameter for CPUState instead
of relying on global env.

Signed-off-by: Blue Swirl <>
[agraf: fix conflict]
Signed-off-by: Alexander Graf <>

19b0516f 09/10/2012 02:38 pm Blue Swirl

target-s390x: switch to AREG0 free mode

Add an explicit CPUState parameter instead of relying on AREG0.

Remove temporary wrappers and switch to AREG0 free mode.

Signed-off-by: Blue Swirl <>
[agraf: fix conflicts]
Signed-off-by: Alexander Graf <>

449c0d70 09/10/2012 02:38 pm Blue Swirl

target-s390x: avoid AREG0 for FPU helpers

Make FPU helpers take a parameter for CPUState instead
of relying on global env.

Introduce temporary wrappers for FPU load and store ops.

Signed-off-by: Blue Swirl <>
Signed-off-by: Alexander Graf <>

4fda26a7 09/10/2012 02:38 pm Blue Swirl

target-s390x: avoid AREG0 for integer helpers

Make integer helpers take a parameter for CPUState instead
of relying on global env.

Signed-off-by: Blue Swirl <>
Signed-off-by: Alexander Graf <>

932385a3 09/10/2012 02:38 pm Blue Swirl

target-s390x: avoid AREG0 for condition code helpers

Make condition code helpers take a parameter for CPUState instead
of relying on global env.

Signed-off-by: Blue Swirl <>
Signed-off-by: Alexander Graf <>

3208afbe 03/05/2012 08:51 pm Lluís Vilanova

Move helpers.h to helper.h

Provides a file naming scheme consistent with other targets.

Signed-off-by: Lluís Vilanova <>
Signed-off-by: Alexander Graf <>