Slava Pestov
dab9cde4bb
vm: speed up some bit twiddling on 32-bit
2009-11-05 19:29:27 -06:00
Slava Pestov
9ae5faa14e
vm: rewrite 'become' primitive so that it uses a slot visitor instead of GC
2009-11-05 19:03:51 -06:00
Slava Pestov
40a82aba19
tools.time: overhaul
2009-11-05 01:07:59 -06:00
Slava Pestov
39c192c829
Align stack pointer on non-Mac OS X x86-32 platforms, and use aligned loads/stores for SIMD values
2009-11-03 23:51:44 -06:00
Slava Pestov
f2bf46e516
vm: fix issue with unnecessary heap growth
2009-11-03 22:25:22 -06:00
Slava Pestov
cb011744ea
vm: fix fixnum* overflow case for 4-bit tags
2009-11-03 21:40:47 -06:00
Slava Pestov
363bdf8425
vm: minor fixes after code review
2009-11-03 04:56:58 -06:00
Slava Pestov
3f39d6d1ca
vm: faster immediate_p()
2009-11-02 20:21:21 -06:00
Slava Pestov
0a476dc58a
vm: remove debug messages
2009-11-02 18:24:04 -06:00
Slava Pestov
a0d41e4dc1
vm: add two missing files
2009-11-02 18:11:12 -06:00
Slava Pestov
b341527428
vm: rename gc_root to data_root, add code_root to fix a problem where code blocks would move underneath the PIC compiler if PIC compiler allocated enough
2009-11-02 18:10:34 -06:00
Slava Pestov
d65296b334
vm: 4 bit tags, new representation of alien objects makes unbox-any-c-ptr more efficient (work in progress)
2009-11-02 04:25:54 -06:00
Slava Pestov
24c3c18390
vm: new megamorphic hashcode algorithm improves bootstrap speed
2009-11-02 01:37:58 -06:00
Slava Pestov
1f2e747ac4
vm: promote objects referenced from compiled code blocks directly to tenured in an aging collection
2009-11-01 23:14:34 -06:00
Slava Pestov
7967ce4ce3
vm: remove debug messages
2009-11-01 20:34:54 -06:00
Slava Pestov
5dc04bd8ae
vm: faster sweep algorithm
2009-11-01 20:24:25 -06:00
Slava Pestov
f68319fef3
vm: more sweep phase optimizations
2009-11-01 04:40:15 -06:00
Slava Pestov
c7430d74c2
vm: remove promotion strategy, clean up compaction code
2009-11-01 03:47:09 -06:00
Slava Pestov
99e3b9c59c
vm: don't do a data compaction when growing the data heap, speeds up data heap grow by a bit
2009-10-31 21:06:34 -05:00
Slava Pestov
761978b662
Merge optimizations from master branch
2009-10-31 03:02:19 -05:00
Slava Pestov
984a8e6adf
vm: faster tuple allocation primitives
2009-10-31 02:58:00 -05:00
Slava Pestov
ea9f67d5bc
vm: fix compile error on non-Mac OS X platforms
2009-10-31 02:36:46 -05: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
Slava Pestov
a737a78110
vm: clean up card unmarking
2009-10-30 03:15:50 -05:00
Slava Pestov
e2beabf2be
vm: new GC policy: mark sweep after N megabytes promoted, mark compact if tenured space cannot fit nursery+aging in one contiguous block. N = 32 on 32-bit and 64 on 64-bit
2009-10-30 02:26:57 -05:00
Slava Pestov
503137b1b9
vm: clean up gc events, remove -verbosegc switch, fix compaction bug
2009-10-27 21:31:28 -05:00
Slava Pestov
b6b8f5baa4
vm: use STL in free list, makes finding largest contiguous free block slightly faster
2009-10-27 18:22:08 -05:00
Slava Pestov
61c2ff4fff
vm: add primitives for getting at GC events, data-room and code-room primitives now return structs instead of arrays
2009-10-27 03:32:28 -05:00
Slava Pestov
772c5483dc
vm: get GC events working, -verbosegc switch now produces more info
2009-10-26 23:57:26 -05:00
Slava Pestov
c0af265568
vm: add gc_event
2009-10-26 22:12:44 -05:00
Slava Pestov
74ecd90cd6
vm: remove crummy old GC stats, split off free list code, clean up various other things
2009-10-26 22:08:35 -05:00
Slava Pestov
d574aeb70a
vm: make compaction its own gc_op
2009-10-25 14:02:14 -05:00
Slava Pestov
67a33ed21a
vm: vm: fix large object allocation logic and change default heap image size for 2009
2009-10-25 13:27:40 -05:00
Slava Pestov
d3dede5599
vm: room. now prints mark stack size, and total/contiguous free space
2009-10-25 13:18:06 -05:00
Slava Pestov
9cfe50f399
vm: tagged typechecks work better with DEBUG=1
2009-10-25 08:07:36 -05:00
Slava Pestov
b064946b11
vm: debugging compaction
2009-10-25 08:07:21 -05:00
Slava Pestov
79c99be6c6
vm: fix compaction when callback heap has entries in it
2009-10-25 00:06:45 -05:00
Slava Pestov
f5a6a3421c
vm: got data heap compaction working
2009-10-24 23:51:14 -05:00
Slava Pestov
c429faf310
vm: fix 'data-room' primitive to report correct sizes for tenured space
2009-10-24 23:49:33 -05:00
Slava Pestov
074200a213
vm: make some more ctors explicit just for kicks
2009-10-24 23:02:58 -05:00
Slava Pestov
7142274aef
vm: combine heap_block and code_block structs, eliminates some boilerplate
2009-10-24 21:33:31 -05:00
Slava Pestov
f9fe342b5c
vm: fix typo in card tracing logic
2009-10-24 04:43:11 -05:00
Slava Pestov
7a1f2b2d4b
vm: clean up code heap visitor
2009-10-24 04:36:29 -05:00
Slava Pestov
38df6426de
vm: move binary_payload_start() method from factor_vm to object class
2009-10-24 04:27:45 -05:00
Slava Pestov
60f3cb669a
vm: data heap compaction work in progress
2009-10-24 04:18:33 -05:00
Slava Pestov
eefcc0fb8c
vm: factor out code that visits object slots and code heap blocks into slot_visitor and code_block_visitor
2009-10-24 03:54:53 -05:00
Slava Pestov
6c561b5c4c
vm: rename userenv to special_objects
2009-10-23 00:33:53 -05:00
Slava Pestov
ed8bbbef21
vm/mark_bits.hpp: fix incorrect constructor argument order
2009-10-22 23:41:02 -05:00
Slava Pestov
b78202e816
Merge branch 'master' into new_gc
2009-10-22 05:40:57 -05:00
Slava Pestov
28de799296
vm: fix compilation
2009-10-22 06:38:02 -04:00
Slava Pestov
5a63edf278
vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer
2009-10-22 05:22:59 -05:00
Joe Groff
03df7adc7b
give better error message for windows exceptions, and don't lop off the top end of the exception code when the vm throws the error
2009-10-21 23:37:51 -05:00
Slava Pestov
e51882c555
vm: debugging mark and sweep
2009-10-21 23:24:35 -05:00
Slava Pestov
6ee56ca93a
vm: use iostreams instead of printf for debug messages, clean up a few things
2009-10-21 20:12:57 -05:00
Slava Pestov
2bae20cd41
vm: debugging mark-sweep
2009-10-21 19:41:54 -05:00
Slava Pestov
a03a817bdb
vm: mark sweep gc for tenured space work in progress
2009-10-20 22:20:49 -05:00
Slava Pestov
056ccc6741
vm: split off free_list_allocator from heap class, rename zone to bump_allocator
2009-10-20 15:26:11 -05:00
Slava Pestov
e7d707c92c
vm: simplify code heap by eliminating HeapLayout template parameter
2009-10-20 14:01:46 -05:00
Slava Pestov
6ab380dc02
vm: object start recording in cards is now independent of allocation strategy
2009-10-20 13:47:04 -05:00
Slava Pestov
1f97169c62
vm: move factor_vm::untagged_object_size() to object::size()
2009-10-20 13:13:39 -05:00
Slava Pestov
f442d1949b
Change data heap alignment to 16 bytes
2009-10-20 12:45:00 -05:00
Slava Pestov
fad52e8420
vm: fix crash when converting a callstack to an array
2009-10-20 12:19:02 -05:00
Slava Pestov
e2dfe160dc
vm: working on making heap more generic
2009-10-20 10:22:06 -05:00
Slava Pestov
f9fc3487c6
vm: change code heap layout somewhat, remove unused allocation bitmap from mark_bits
2009-10-20 09:37:24 -05:00
Doug Coleman
9d4d27dd0f
Merge branch 'master' into startup
2009-10-20 00:31:45 -04:00
Doug Coleman
ccdb11419f
the exit primitive is now called (exit) and exit calls shutdown hooks.
...
add a stop_factor function to the vm to allow calling the shutdown quotation
2009-10-20 00:28:18 -04:00
Slava Pestov
013f085ffe
Merge branch 'master' of git://factorcode.org/git/factor
2009-10-19 21:44:56 -05:00
Slava Pestov
933b051f25
Merge branch 'master' of git://factorcode.org/git/factor into new_gc
2009-10-19 21:44:36 -05:00
Slava Pestov
d3f365d2f8
vm: change code heap alignment to 16 bytes instead of 32 to reduce image size
2009-10-19 06:10:39 -05:00
Slava Pestov
e68b570e2b
vm: move compaction algorithm to mark_bits.hpp since it doesn't rely on properties of heaps per se
2009-10-19 03:05:20 -05:00
Slava Pestov
5e12356a22
vm: new mark_bits data structure replaces hashtable when compacting code heap
2009-10-19 02:21:11 -05:00
Slava Pestov
715f5ebf88
vm: cleanup
2009-10-19 00:16:32 -05:00
Slava Pestov
be96d985e9
vm: working on new compaction implementation
2009-10-19 00:07:43 -05:00
Slava Pestov
a977ade0af
vm: fix conflict in image.cpp
2009-10-18 20:54:13 -05:00
Slava Pestov
89612b7f31
vm: rename myvm and parent_vm instance variables to parent, clean up casts in primitive definitions
2009-10-18 20:31:59 -05:00
Slava Pestov
f0a1a3ce5b
vm: rename F to false_object, and rename T to true_object
2009-10-18 20:26:21 -05:00
Slava Pestov
b380a2f8e8
vm: fix GC safety issue in non-optimizing compiler
2009-10-18 18:57:41 -05:00
Slava Pestov
40b5c2c732
vm: code heap: move mark bits to a separate bitmap
2009-10-16 14:41:40 -05:00
Slava Pestov
9936dce2ec
vm: fix typo
2009-10-16 12:25:21 -05:00
Slava Pestov
15a9494d2c
vm: fix compile errors on some gcc versions
2009-10-16 12:13:43 -05:00
Slava Pestov
030d035e94
vm: code heap compaction at runtime using compact-gc primitive
2009-10-16 11:39:35 -05:00
Slava Pestov
c80b255885
vm: allocate stacks and data heap segments without execute permissions
2009-10-16 05:16:12 -05:00
Slava Pestov
7c126be62b
vm: simpler and more efficient code heap compaction; restructure a few things to get ready for runtime code heap compaction
2009-10-16 04:33:35 -05:00
Slava Pestov
786f6826b6
Merge branch 'reentrantvm' of git://github.com/phildawes/factor
2009-10-16 03:52:35 -05:00
Slava Pestov
bd20a52580
vm: make the code nice and pretty
2009-10-16 02:55:02 -05:00
Slava Pestov
78f3f0e90d
vm: don't flush instruction cache twice per code block on a major GC on PowerPC
2009-10-15 22:31:41 -05:00
Slava Pestov
63782dc1b6
Merge branch 'master' of git://factorcode.org/git/factor
2009-10-15 22:12:00 -05:00
Slava Pestov
9314e8cdf2
vm: remove some dead code
2009-10-15 22:06:43 -05:00
Doug Coleman
f29055c6aa
fix compiler warning
2009-10-15 21:42:01 -05:00
Doug Coleman
a11a8c0a93
fix compiler warnings in vm
2009-10-15 21:37:53 -05:00
Slava Pestov
5027527287
vm: during tenuring stage of aging collection, if tenured space fills up, it would attempt a to_tenured collection. this will succeed if all roots were tenured. however, this is unsound, because there's now an untraced segment of tenured space. fix: if tenuring fails, go on to do a full collection instead
2009-10-15 05:51:11 -05:00
Slava Pestov
231e495e19
vm: fix compile error
2009-10-14 19:55:02 -05:00
Slava Pestov
bfd1f0d6d2
vm: rt-vm relocation now supports accessing a field directly
2009-10-14 19:24:23 -05:00
Phil Dawes
0b2db4018a
Removed VM_PTR macros. All builds reentrant by default
2009-10-14 19:14:57 +01:00
Slava Pestov
0455711727
vm: faster write barrier for non-optimized code
2009-10-14 06:13:51 -05:00
Slava Pestov
05c4e409fe
vm: during an aging collection, promote objects referenced from tenured directly to tenured
2009-10-14 06:03:52 -05:00
Slava Pestov
e89d037c3f
vm: debugging new card marking
2009-10-14 04:59:28 -05:00
Slava Pestov
10ad5cad53
Working on adding support for the new write barrier to optimized code
2009-10-14 02:06:01 -05:00
Slava Pestov
1ee53d04a9
vm: new card marking implementation supports marking partial objects
2009-10-13 21:16:04 -05:00
Slava Pestov
f2eb53ab46
vm: rename
2009-10-09 23:37:35 -05:00
Slava Pestov
c9e1d415fe
vm: refactoring card logic a bit
2009-10-09 11:16:18 -05:00
Slava Pestov
237a0d7ab5
vm: remove old_data_heap from gc_state
2009-10-09 09:47:54 -05:00
Slava Pestov
717ac69928
vm: fix integer overflow
2009-10-09 05:55:32 -05:00
Slava Pestov
a13ffad800
vm: build fix
2009-10-09 05:12:28 -05:00
Slava Pestov
2d77a01ca2
Merge branch 'master' of git://factorcode.org/git/factor
2009-10-09 03:21:31 -05:00
Slava Pestov
44c78493bf
vm: misc cleanups
2009-10-09 03:20:50 -05:00
Slava Pestov
33b35ce82e
vm: record bytes/objects copied again
2009-10-09 03:20:06 -05:00
Slava Pestov
266aaf17b7
vm: fix formatting
2009-10-09 02:57:04 -05:00
Slava Pestov
0339f306d0
vm: remove unrolled card scan loop since it appears to be a performance loss
2009-10-09 02:05:31 -05:00
Slava Pestov
634d3eee86
vm: simplify card marking logic, and unmark more cards during aging collections by checking if they actually contained young pointers or not
2009-10-09 01:37:45 -05:00
Slava Pestov
a77af6a11c
Fix problem if last card is marked
2009-10-08 23:58:20 -05:00
Slava Pestov
220f7d0d0c
vm: cleanup
2009-10-08 23:39:54 -05:00
Slava Pestov
b2cae0b6d8
vm: more efficient code heap remembered set
2009-10-08 23:10:32 -05:00
Slava Pestov
bf8b656276
vm: rename data_gc.cpp to gc.cpp
2009-10-08 02:11:29 -05:00
Slava Pestov
6582cba945
vm: split off parts of data_gc into sub-files and clean up logic
2009-10-08 02:10:28 -05:00
Slava Pestov
22244414f3
vm: add code block marking to full_collector.cpp
2009-10-08 00:23:29 -05:00
Slava Pestov
427676f60e
vm/os-netbsd.cpp: fix double-free error
2009-10-07 21:49:04 -05:00
Slava Pestov
83de156992
vm: working on new object-oriented garbage collector
2009-10-07 15:48:09 -05:00
Slava Pestov
b9f386c693
vm: make a new old_space type to encapsulate a few things, split up generations array somewhat
2009-10-07 14:05:09 -05:00
Slava Pestov
bc691eb198
vm: replace generations array with individual instance variables referencing zone objects
2009-10-07 11:59:59 -05:00
Slava Pestov
2c527982fe
vm: rename a few things
2009-10-07 08:40:28 -05:00
Slava Pestov
8ffd538d27
vm: more code cleanups
2009-10-07 08:33:54 -05:00
Slava Pestov
eaf1afb156
vm: more refactoring
2009-10-06 20:45:47 -05:00
Slava Pestov
40fd28e0a3
vm: refactor forwarding pointer logic
2009-10-06 19:15:54 -05:00
Slava Pestov
8109e7376c
vm: simplify some code
2009-10-06 08:55:42 -05:00
Slava Pestov
39f4be940f
vm: faster zone::contains_p()
2009-10-06 06:47:56 -05:00
Slava Pestov
6f1217dab6
vm: simplify logic
2009-10-06 06:36:43 -05:00
Slava Pestov
4d0ec09d9c
vm: put code block owner directly in the header, instead of as the first entry in the literal table. Reduces x86-64 image size by ~700kb, also eliminates separate 'strip' set of staging images from deploy tool
2009-10-06 06:25:07 -05:00
Slava Pestov
fa2ee8ee7a
vm: free up a cell in compiled code block headers
2009-10-06 05:52:45 -05:00
Slava Pestov
4c6db88548
vm: tweak
2009-10-06 04:57:44 -05:00
Slava Pestov
d066d46c8d
vm: add a remembered set for code blocks which may reference young literals. Improves loading time
2009-10-06 04:36:34 -05:00
Slava Pestov
326952e919
vm: number of generations is not configurable anymore, split up begin_gc() and end_gc() into collect_{nursery,aging,aging_again,tenured}()
2009-10-06 02:39:12 -05:00
Slava Pestov
1bfa4ef5ca
vm: cleanup
2009-10-06 01:42:17 -05:00
Slava Pestov
9ca96b1b3f
Merge branch 'master' into new_gc
2009-10-06 01:31:50 -05:00
Slava Pestov
2058b31b5b
vm: minor tweaks which reduce image size by ~300kb
2009-10-06 01:31:39 -05:00
Slava Pestov
9ccec33321
vm: more GC refactoring
2009-10-06 00:13:54 -05:00
Slava Pestov
d5be02d48f
vm: refactoring garbage collector
2009-10-05 22:16:08 -05:00
Slava Pestov
42f60d457f
Merge branch 'for-slava' of git://git.rfc1149.net/factor
2009-10-05 18:29:31 -05:00
Slava Pestov
931107397c
compiler.cfg: remove _gc instruction, it doesn't need to exist, and change GC checks to ensure that the right amount of space is available instead of blindly checking for 1Kb
2009-10-05 05:27:49 -05:00
Slava Pestov
d6bd25d8e4
vm: fix VM constructor
2009-10-05 04:31:35 -05:00
Slava Pestov
5ad19c0b10
vm: remove debug message
2009-10-05 03:28:36 -05:00
Slava Pestov
83d21310f2
Change C++ exception usage back into a longjmp() due to GCC bugs
2009-10-05 03:27:28 -05:00
Doug Coleman
ec1e48076e
let's work with cygwin here..._ftelli64 -> ftello64 on cygwin. fine i guess
2009-10-04 06:10:57 -05:00
Doug Coleman
8907addf3b
Merge branch 'master' of git://factorcode.org/git/factor
2009-10-03 18:27:38 -05:00
Doug Coleman
6d451ac9d8
add ftell primitive
2009-10-03 18:20:35 -05:00
Samuel Tardieu
32051f6d85
Remove two small memory leaks on Linux
2009-10-03 18:18:07 +02:00
Slava Pestov
d30ebc6213
vm.hpp: fix typo
2009-10-03 09:47:06 -05:00
Slava Pestov
3887292543
Big VM cleanup
...
- Move forward declarations of 'struct factor_vm' to one place
- Rename template parameters from T and TYPE to descriptive names. New convention: CamelCase for template parameters
- Change some higher-order functions taking function pointers into templates, and define classes overriding operator(). There's a bit of new boilerplate here but its more consistent than the old mish-mash approaches
- Put GC state into a gc_state struct
- Use exceptions instead of longjmp for non-local control transfer in GC
- In code GC, instead of interleaving code block tracing with copying, add code blocks which need to be revisited to an std::set stored in the gc_state
2009-10-03 08:47:05 -05:00
Slava Pestov
fd01b95f8e
vm: cleanup in os-genunix.cpp
2009-10-02 20:36:19 -05:00
Joe Groff
8edde0ffeb
keep a map of thread ids to vm pointers. use this to look up the correct VM to handle mach exceptions on os x
2009-10-02 12:03:05 -05:00
Joe Groff
30dca04b81
import std::tr1/boost ::unordered_map into the factor namespace instead of using #define
2009-10-02 11:13:27 -05:00
Joe Groff
0c5a1de5ae
don't leak startargs in start_standalone_factor_in_new_thread
2009-10-02 11:11:17 -05:00
Slava Pestov
0497ade10b
vm: add assertions to tls_vm()
2009-10-02 09:37:04 -05:00
Slava Pestov
06736767f4
vm: fix register clobberage in PowerPC c_to_factor (untested)
2009-10-02 09:19:31 -05:00
Slava Pestov
0030f6c493
vm: fix register clobberage in x86 c_to_factor
2009-10-02 09:12:09 -05:00
Slava Pestov
a989cad668
vm: fix compile error with DEBUG=1
2009-10-02 03:30:02 -05:00
Slava Pestov
aa0359f78d
Merge branch 'reentrantvm' of git://github.com/phildawes/factor
2009-10-02 03:28:21 -05:00
Slava Pestov
09aa172725
vm: fix stack alignment in primitive_inline_cache_miss
2009-10-02 03:25:18 -05:00
Phil Dawes
c2a5049a25
removed some superflous newlines
2009-10-01 07:33:16 +01:00
Phil Dawes
a45ccd1a72
calls dispatched as per multithreaded, but checked against singleton
2009-09-30 21:25:50 +01:00
Phil Dawes
e91cb04aeb
ppc asm to pass vm pointer: inline_cache_miss, set_callstack
2009-09-30 19:43:36 +01:00
Phil Dawes
4e9392b093
ppc asm to pass vm pointer: overflow fns
2009-09-30 07:59:36 +01:00
Phil Dawes
6f0d25a8b3
ppc asm to pass vm pointer: initial bootstrap
2009-09-28 07:48:37 +01:00
Phil Dawes
a514f79d3c
inlineimpl.hpp is toast
2009-09-29 19:53:10 +01:00
Phil Dawes
0ca2b9b3b2
Converted some callback fns to use member-fn pointers
2009-09-28 19:45:10 +01:00
Phil Dawes
49df5b1078
moved local_roots and write_barrier stuff out of inlineimpls.hpp
2009-09-28 19:02:51 +01:00
Slava Pestov
3024810dfa
Word hashcodes are now computed from the word's name/vocabulary, removing a source of non-determinism
2009-09-27 21:09:11 -05:00
Phil Dawes
132628985c
removed vm-data.hpp
2009-09-27 20:09:09 +01:00
Phil Dawes
63266524d7
Moved PRIMITIVE and PRIMITIVE_FORWARDs to primitives.[ch]pp
2009-09-27 19:42:18 +01:00
U-SLAVA-DFB8FF805\Slava
5a50ec204b
vm: fix compilation on Windows
2009-09-26 02:56:55 -05:00
Slava Pestov
3c38656fd2
vm: fix windows compilation (untested)
2009-09-26 02:41:01 -05:00
Slava Pestov
09e8bac216
Fix GC root safety in word-xt primitive
2009-09-25 21:42:21 -05:00
Slava Pestov
1a6a106d28
vm: remove safe_malloc now that everything uses constructors instead
2009-09-25 21:22:05 -05:00
Slava Pestov
3d196110b7
Make segment, context, data_heap, zone more object-oriented, and fix crash when calling undefined symbols
2009-09-25 21:17:20 -05:00
Slava Pestov
5195fdaeaa
vm: make heap data-type object-oriented
2009-09-25 20:32:00 -05:00
Slava Pestov
1174d60026
Merge branch 'vm_cleanup' of git://github.com/phildawes/factor
2009-09-25 19:04:19 -05:00
Slava Pestov
0f411c530b
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-25 18:23:36 -05:00
Slava Pestov
0a60f18e28
vm: ignore 'declare' calls in non-optimizing compiler
2009-09-25 18:08:21 -05:00
Slava Pestov
efbd24e95f
vm: clean up os-unix.cpp
2009-09-25 18:08:00 -05:00
Phil Dawes
c495640cc5
forwarding functions replaced with PRIMITIVE_FORWARD() macro
2009-09-25 20:43:01 +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
aa71248937
made inline_gc a VM_C_API function
2009-09-25 18:29:07 +01:00
Phil Dawes
8b005f5b1d
make inline_gc regparm(3) and cleaned up %call-gc stack alignment
2009-09-24 21:45:56 +01:00
Phil Dawes
eb2a376a06
fix c_to_factor stack alignment
2009-09-24 20:18:42 +01:00
Phil Dawes
0583e849af
fix lazy_jit_compile to not abuse stack on x86.32
2009-09-24 19:59:37 +01:00
Slava Pestov
939b175afa
vm/cpu-x86.32.S: formatting fix
2009-09-24 06:25:01 -05:00
Slava Pestov
2ea0b9da1d
Merge branch 'vm_cleanup' of git://github.com/phildawes/factor
2009-09-24 04:31:55 -05:00
Slava Pestov
b5773dc1da
vm: Fix potential crash in <word> primitive if profiling is enabled
2009-09-24 04:31:11 -05:00
Phil Dawes
4adcdccd16
renamed myvm member variable to parent_vm
2009-09-24 08:16:57 +01:00
Phil Dawes
1c5329cc2e
renamed factorvm to factor_vm
2009-09-24 08:16:52 +01:00
Phil Dawes
0022f5c45f
bignum indentation and macro cleanup
2009-09-24 08:02:14 +01:00
Phil Dawes
1c2292d36a
bignum indentation cleanup
2009-09-24 08:02:14 +01:00
Phil Dawes
2cfb1b6f02
removed a bunch of superflous blank lines
2009-09-24 08:02:14 +01:00
Phil Dawes
134a359353
misc cleanup
2009-09-24 08:02:14 +01:00
Phil Dawes
911471c411
removed superflous whitspace lines
2009-09-24 08:02:14 +01:00
Phil Dawes
3da9b64c73
renamed vmprim_ to primitive_
2009-09-24 08:02:13 +01:00
Slava Pestov
e04fba6bc7
Fix conflict
2009-09-20 23:18:07 -05:00
Slava Pestov
66871995c9
math.vectors.simd: add saturated arithmetic operations
2009-09-20 23:16:02 -05:00
Phil Dawes
8662e9e9e4
put mach call_fault_handler in the vm
2009-09-16 08:22:18 +01:00
Phil Dawes
82f0c90719
fpe signals working on unix again
2009-09-16 08:22:18 +01:00