mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-17 09:10:22 +02:00
Add unsigned 64-bit arithmetic operators: uadd, usub, umul
* libguile/vm-engine.c (uadd, usub, umul): New ops. * module/language/cps/effects-analysis.scm (uadd, usub, umul): Add effects analysis. * module/language/cps/slot-allocation.scm (compute-var-representations): The new ops define 'u64 values. * module/language/cps/types.scm (uadd, usub, umul): Add type checkers and inferrers. * module/system/vm/assembler.scm (emit-uadd, emit-usub, emit-umul): New assemblers.
This commit is contained in:
parent
2906d963ea
commit
d294d5d1e1
5 changed files with 71 additions and 4 deletions
|
@ -142,6 +142,9 @@
|
|||
(emit-fsub* . emit-fsub)
|
||||
(emit-fmul* . emit-fmul)
|
||||
(emit-fdiv* . emit-fdiv)
|
||||
(emit-uadd* . emit-uadd)
|
||||
(emit-usub* . emit-usub)
|
||||
(emit-umul* . emit-umul)
|
||||
(emit-logand* . emit-logand)
|
||||
(emit-logior* . emit-logior)
|
||||
(emit-logxor* . emit-logxor)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue