Commit Graph

977 Commits (b683ecaa741941ddf95b9d8e0c29b0a76ad0eb14)

Author SHA1 Message Date
Slava Pestov b683ecaa74 Merge branch 'master' of git://factorcode.org/git/factor into no_literal_table 2009-11-27 18:32:21 -06:00
Slava Pestov 77a877789a vm: new implementation of modify-code-heap that doesn't use literal tables 2009-11-25 17:20:48 -06:00
Slava Pestov 4ebaf956c3 vm: non-optimizing compiler now compiles word definition quotations with the owner set to the word object 2009-11-24 22:44:04 -06:00
Slava Pestov 73e105bfc4 vm: flush icache after GC 2009-11-24 21:36:35 -06:00
Slava Pestov b09d6ef586 vm: deallocate old PIC after allocating the new one to avoid having the code heap potentially point to a free block during compaction 2009-11-24 21:20:23 -06:00
Slava Pestov bfd4cce364 vm: compaction now updates the needs_fixup set 2009-11-24 19:29:59 -06:00
Slava Pestov 001a3f2847 vm: mark sweep now traces code block references; rename embedded_pointer to instruction_operand 2009-11-23 19:17:12 -06:00
Slava Pestov b28619ce2f vm: minor GC traces embedded pointers 2009-11-22 13:37:39 -06:00
Slava Pestov 57fe0dea48 Fix conflict 2009-11-22 02:12:44 -06:00
Doug Coleman 6b780f5843 fix openbsd compile 2009-11-30 12:58:39 -06:00
Doug Coleman bce084ac12 fix windows compile error 2009-11-20 04:21:21 -06:00
Slava Pestov 24c3ddbbde Clean up startup/shutdown hook code 2009-11-20 00:57:49 -06:00
Doug Coleman 987602235e remove sleep_micros, add sleeo_nanos to vm 2009-11-19 04:49:29 -06:00
Slava Pestov 2e3207b590 vm: fix compilation with DEBUG=1 2009-11-19 02:08:05 -06:00
Slava Pestov f47b72d98b Fix potential assertion failure if GC was invoked while enabling profiling 2009-11-19 01:49:26 -06:00
Doug Coleman 251ebb7f91 vm/Config.openbsd: pass in -fno-inline-functions to work around apparent gcc bug 2009-11-18 19:06:26 -06:00
Doug Coleman 6f7ec206a1 rename millis to system-millis, micros to system-micros, add nano-count 2009-11-18 15:58:48 -06:00
Doug Coleman 0145f0f860 link against librt 2009-11-18 11:09:05 -06:00
Doug Coleman 60d8ef22b8 fix current_nanos on windows 2009-11-18 11:04:46 -06:00
Doug Coleman b4206f5252 initial commit to nanos branch to replace micros 2009-11-18 04:20:05 -06:00
Slava Pestov cf35ffb126 vm: fix problem in card marking if first block is free 2009-11-16 00:52:32 -06:00
Doug Coleman 51e21a6aa8 update vm for startup branch 2009-11-15 02:53:02 -06:00
Doug Coleman cc194416f9 Merge branch 'master' into startup
Conflicts:
	core/bootstrap/primitives.factor
	vm/run.hpp
2009-11-15 02:52:50 -06:00
Slava Pestov 4c268f2600 vm: record compaction events correctly 2009-11-13 09:29:21 -06:00
Slava Pestov 86da8ebed9 Instead of bumping the definition counter every time in the VM, bump it only if stack effects changed or macros were redefined 2009-11-13 03:52:14 -06:00
Slava Pestov cba12eae37 Invalidate inline caches used by call( and execute( when words are redefined 2009-11-12 16:09:07 -06:00
Slava Pestov 9a475570e4 Revert "Revert "vm: faster allocation in tenured space and code heap. If small free list exhausted, allocate a 1kb block and split it up instead of searching larger free lists""
This reverts commit 81a68ebd36.
2009-11-11 19:33:50 -06:00
Slava Pestov c2b3d6b894 vm: fix fencepost error in write barrier on large object allocation; fixes benchmark.sort crash 2009-11-11 19:31:18 -06:00
Slava Pestov 5169dddc40 Revert "vm: faster allocation in tenured space and code heap. If small free list exhausted, allocate a 1kb block and split it up instead of searching larger free lists"
This reverts commit 9af2fa1957.
2009-11-11 05:47:22 -06:00
Slava Pestov 2c8f67851e vm: fix GC safety issue in callers of unbox_array_size(), and change how disable-gc-events works so that it doesn't make a byte array that's too large 2009-11-11 05:21:03 -06:00
Slava Pestov 2afd7ce244 Faster identity-hashcode primitive; fast path now opencoded by the compiler 2009-11-11 02:27:19 -06:00
Slava Pestov 064c00f78d New identity-hashcode primitive 2009-11-10 21:18:54 -06:00
Slava Pestov 4162ee2127 vm: faster allocation in tenured space and code heap. If small free list exhausted, allocate a 1kb block and split it up instead of searching larger free lists 2009-11-10 20:19:29 -06:00
Slava Pestov cb6552ae6e vm/contexts: cleanup 2009-11-08 19:44:18 -06:00
Slava Pestov 8b52d85aed vm: minor cleanup 2009-11-08 06:08:17 -06:00
Samuel Tardieu 351e795a52 Add parentheses to prevent GCC warning 2009-11-08 02:01:48 +01:00
Slava Pestov 57c541ea46 vm: eliminating literal table work in progress 2009-11-07 16:16:09 -06:00
Slava Pestov 43e08c76fb vm: on 32-bit, the largest free block size was only 512mb, leading to weird errors if the heap grew beyond this. eliminate this limit 2009-11-06 08:44:36 -06:00
Slava Pestov 11075828e5 vm: faster data_root and <array> primitive 2009-11-06 05:30:37 -06:00
Slava Pestov eac0f9ffcf vm: report true size of mark stack 2009-11-06 04:15:55 -06:00
Slava Pestov c512013220 vm: fix crash if all-instances primitive triggers a GC 2009-11-06 01:41:11 -06:00
Slava Pestov 84e191704e vm: fix crash in profiler 2009-11-06 01:22:53 -06:00
Slava Pestov e2107166ff vm: restructure data_roots so that its a sequence of handle/len pairs rather than just handles, use it in inline_gc() and all_instances() so that we don't run out of heap while building the object array 2009-11-06 00:54:28 -06:00
Slava Pestov b011295300 vm: fix 'become' when aging space is empty 2009-11-05 23:53:53 -06:00
Slava Pestov c08d325132 Remove unused error from VM 2009-11-05 21:52:31 -06:00
Slava Pestov 4061951d1c vm: simpler object space implementation. begin-scan/next-object/end-scan primitives replaced by a single all-instances primitive 2009-11-05 21:49:03 -06:00
Slava Pestov 18a2ce1f8c vm: remove some dead code 2009-11-05 19:32:26 -06:00
Slava Pestov 22c717616c vm: speed up some bit twiddling on 32-bit 2009-11-05 19:29:27 -06:00
Slava Pestov 72ab6ec548 vm: rewrite 'become' primitive so that it uses a slot visitor instead of GC 2009-11-05 19:03:51 -06:00
Slava Pestov 47df580081 tools.time: overhaul 2009-11-05 01:07:59 -06:00