Commit Graph

29 Commits (c28d5589a2daa66b6e273f03fbff272278a9fb15)

Author SHA1 Message Date
Slava Pestov 0abdfbfc1b compiler.cfg: open-code parameter boxing and unboxing for certain C types 2010-07-19 10:25:13 -04:00
Slava Pestov bbcffab3fa compiler.cfg: ##unbox-long-long can have multiple outputs now, clean up long long parameter passing code using this 2010-07-15 19:49:29 -04:00
Slava Pestov bcf7a5e15e Use ##local-allot to simplify longlong unboxing 2010-05-19 01:07:22 -04:00
Slava Pestov b40cd01828 vm: fix compile error 2010-05-11 19:29:50 -04:00
Slava Pestov 1453154376 vm: remove VM_ASM_API 2009-12-24 01:37:24 +13:00
Slava Pestov a942e2c34d vm: eliminating register variables work in progress. Works on x86-32 with non-optimizing compiler 2009-12-19 10:59:56 +13:00
Slava Pestov 2d0a36804f vm: various minor optimizations speeding up gc0 and dispatch1 benchmarks, as well as bootstrap
- make allot_object() inline, move slow case to allot_large_object()
- reduce number of conditional branches in megamorphic cache miss handler
- make unbox_array_size() inline, move slow case to unbox_array_size_slow()
- new memset_cell() function uses memset_pattern4/8() on Mac OS X
2009-10-31 02:30:48 -05:00
Phil Dawes a514f79d3c inlineimpl.hpp is toast 2009-09-29 19:53:10 +01:00
Phil Dawes 63266524d7 Moved PRIMITIVE and PRIMITIVE_FORWARDs to primitives.[ch]pp 2009-09-27 19:42:18 +01:00
Phil Dawes e6048ed076 removed VM_ASM_API_OVERFLOW (VM_ASM_API now regparm(3)) 2009-09-25 20:33:38 +01:00
Phil Dawes 1c5329cc2e renamed factorvm to factor_vm 2009-09-24 08:16:52 +01:00
Phil Dawes 57ffdae57f asm math functions pass vm ptr to overflow function in 3rd arg (X86.32) 2009-09-16 08:22:17 +01:00
Phil Dawes 12412303a5 Added vm ptr to math overflow functions 2009-09-16 08:22:17 +01:00
Phil Dawes 4d6294693d removed all vm-> singleton accesses from inlineimpls 2009-09-16 08:16:33 +01:00
Phil Dawes 49e3efddfb converted box_* float functions to use vm (x86 win32) 2009-09-16 08:16:33 +01:00
Phil Dawes e50ab40c78 converted box_* integer functions to use vm (x86 windows) 2009-09-16 08:16:33 +01:00
Phil Dawes 780415b159 added code to pass vm ptr to some unboxers 2009-09-16 08:16:32 +01:00
Phil Dawes c4b2468cb2 removed some global functions from math.cpp 2009-09-16 08:16:28 +01:00
Phil Dawes 1c02e9eda0 moved more math.hpp inline functions to vm 2009-09-16 08:16:25 +01:00
Phil Dawes 6c566717ba moved global state from math into vm 2009-09-16 08:16:24 +01:00
Phil Dawes 2bf80c0bf6 moved math.hpp inline functions to vm.hpp 2009-09-16 08:16:23 +01:00
Phil Dawes f3e67817cc moved math.hpp functions to vm 2009-09-16 08:16:22 +01:00
Slava Pestov 92ae2f7e71 VM cleanup: replace some #defines with constants and inline functions 2009-05-08 15:05:55 -05:00
Slava Pestov ec943c2299 Change (void) to () 2009-05-05 11:33:35 -05:00
Slava Pestov 7c0a59f7a9 The great type renaming 2009-05-04 04:50:24 -05:00
Slava Pestov 7f48eb2b2c Use C++ namespaces 2009-05-04 01:46:13 -05:00
Slava Pestov 1857f90eb6 VM: use better abstractions for tagged pointers, eliminate get()/set() stuff, clean up array, string, and byte-array element access 2009-05-04 01:00:30 -05:00
Slava Pestov dfaa338af7 Clean up untag_* and tag_* inline functions in favor of more idiomatic C++ 2009-05-02 20:47:29 -05:00
Slava Pestov 938d1a4270 Move vmpp to vm 2009-05-02 20:37:18 -05:00