mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-05 06:50:21 +02:00
x86: Correct wrong x87 float indexed store code generation.
* lib/jit_x86-x87.c: Correct wrong code generation due to comparing the base and not the value register with %st(0) in stxi_f.
This commit is contained in:
parent
4e5368d291
commit
c162b9d836
2 changed files with 7 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2013-12-02 Paulo Andrade <pcpa@gnu.org>
|
||||||
|
|
||||||
|
* lib/jit_x86-x87.c: Correct wrong code generation due
|
||||||
|
to comparing the base and not the value register with
|
||||||
|
%st(0) in stxi_f.
|
||||||
|
|
||||||
2013-12-02 Paulo Andrade <pcpa@gnu.org>
|
2013-12-02 Paulo Andrade <pcpa@gnu.org>
|
||||||
|
|
||||||
* lib/jit_x86-x87.c, lib/jit_x86.c: Use 8 bytes aligned
|
* lib/jit_x86-x87.c, lib/jit_x86.c: Use 8 bytes aligned
|
||||||
|
|
|
@ -932,7 +932,7 @@ _x87_stxi_f(jit_state_t *_jit, jit_word_t i0, jit_int32_t r0, jit_int32_t r1)
|
||||||
x87_stxr_f(rn(reg), r0, r1);
|
x87_stxr_f(rn(reg), r0, r1);
|
||||||
jit_unget_reg(reg);
|
jit_unget_reg(reg);
|
||||||
}
|
}
|
||||||
else if (r0 == _ST0_REGNO)
|
else if (r1 == _ST0_REGNO)
|
||||||
fstsm(i0, r0, _NOREG, _SCL1);
|
fstsm(i0, r0, _NOREG, _SCL1);
|
||||||
else {
|
else {
|
||||||
fxchr(r1);
|
fxchr(r1);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue