Revision 465e9838 target-i386/op.c
b/target-i386/op.c | ||
---|---|---|
1911 | 1911 |
FORCE_RET(); |
1912 | 1912 |
} |
1913 | 1913 |
|
1914 |
void OPPROTO op_fistt_ST0_A0(void) |
|
1915 |
{ |
|
1916 |
#if defined(__sparc__) && !defined(__sparc_v9__) |
|
1917 |
register CPU86_LDouble d asm("o0"); |
|
1918 |
#else |
|
1919 |
CPU86_LDouble d; |
|
1920 |
#endif |
|
1921 |
int val; |
|
1922 |
|
|
1923 |
d = ST0; |
|
1924 |
val = floatx_to_int32_round_to_zero(d, &env->fp_status); |
|
1925 |
if (val != (int16_t)val) |
|
1926 |
val = -32768; |
|
1927 |
stw(A0, val); |
|
1928 |
FORCE_RET(); |
|
1929 |
} |
|
1930 |
|
|
1931 |
void OPPROTO op_fisttl_ST0_A0(void) |
|
1932 |
{ |
|
1933 |
#if defined(__sparc__) && !defined(__sparc_v9__) |
|
1934 |
register CPU86_LDouble d asm("o0"); |
|
1935 |
#else |
|
1936 |
CPU86_LDouble d; |
|
1937 |
#endif |
|
1938 |
int val; |
|
1939 |
|
|
1940 |
d = ST0; |
|
1941 |
val = floatx_to_int32_round_to_zero(d, &env->fp_status); |
|
1942 |
stl(A0, val); |
|
1943 |
FORCE_RET(); |
|
1944 |
} |
|
1945 |
|
|
1946 |
void OPPROTO op_fisttll_ST0_A0(void) |
|
1947 |
{ |
|
1948 |
#if defined(__sparc__) && !defined(__sparc_v9__) |
|
1949 |
register CPU86_LDouble d asm("o0"); |
|
1950 |
#else |
|
1951 |
CPU86_LDouble d; |
|
1952 |
#endif |
|
1953 |
int64_t val; |
|
1954 |
|
|
1955 |
d = ST0; |
|
1956 |
val = floatx_to_int64_round_to_zero(d, &env->fp_status); |
|
1957 |
stq(A0, val); |
|
1958 |
FORCE_RET(); |
|
1959 |
} |
|
1960 |
|
|
1914 | 1961 |
void OPPROTO op_fbld_ST0_A0(void) |
1915 | 1962 |
{ |
1916 | 1963 |
helper_fbld_ST0_A0(); |
Also available in: Unified diff