projects
/
mit-scheme.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
20a95a9
)
i386 flonums: Fix substitution of FLDZ,FUCOMP for FTST in 521ffb3.
author
Matt Birkholz
<puck@birchwood-abbey.net>
Fri, 10 Oct 2014 23:39:22 +0000
(16:39 -0700)
committer
Matt Birkholz
<puck@birchwood-abbey.net>
Fri, 10 Oct 2014 23:39:22 +0000
(16:39 -0700)
The branch instructions needed to be swapped.
This caused compiled generic arithmetic to get e.g. (> x 0.) wrong,
causing an overflow in float->integers when compiling
runtime/arith.scm for the SVM.
src/microcode/cmpauxmd/i386.m4
patch
|
blob
|
history
diff --git
a/src/microcode/cmpauxmd/i386.m4
b/src/microcode/cmpauxmd/i386.m4
index ae640bfb9e12a339c354f55111a2aeb1f40379e1..bf538d6d3296fd758e5adff9f7e0dbfa8fd6c515 100644
(file)
--- a/
src/microcode/cmpauxmd/i386.m4
+++ b/
src/microcode/cmpauxmd/i386.m4
@@
-1141,8
+1141,8
@@
asm_generic_$1_fail:
IF387(`define_unary_operation(decrement,22,sub,fsubr)
define_unary_operation(increment,26,add,fadd)
-define_unary_predicate(negative,2a,jl,j
b
)
-define_unary_predicate(positive,2c,jg,j
a
)
+define_unary_predicate(negative,2a,jl,j
a
)
+define_unary_predicate(positive,2c,jg,j
b
)
define_unary_predicate(zero,2d,je,je)
# define_binary_operation(name,index,fix*fix,flo*flo)