Joe Groff
9b575730bb
vm: add RT_SAFEPOINT to number_of_parameters()
2011-10-27 21:14:45 -07:00
Joe Groff
e1465308cd
vm: add RT_SAFEPOINT relocation type
2011-10-27 21:14:44 -07:00
Joe Groff
99804d5e3f
vm: code_heap::(un)guard_safepoint methods
2011-10-27 21:14:44 -07:00
Joe Groff
4c8dec1e98
vm: take a page from code_heap for safepoints
2011-10-27 21:14:44 -07:00
Doug Coleman
432927fe5f
Move --no-as-needed to Config.linux since it breaks compilation on mac
2011-10-19 12:09:43 -07:00
Philipp Brüschweiler
c83d6ac411
Config.unix: don't hardcode ui libs, use pkg-config instead
2011-10-19 11:37:21 -07:00
Joe Groff
92d24b0a8f
vm: no-op reallot_array with same size, for real
2011-10-17 21:23:01 -07:00
Joe Groff
59f0b93290
vm: make reallot_array for same size a no-op
2011-10-17 21:23:01 -07:00
Joe Groff
fde782cff6
vm: non-copying primitive_fread
...
primitive_fread now takes a buffer pointer argument and returns a count of bytes read instead of allocating a byte array.
2011-10-17 21:22:57 -07:00
John Benediktsson
4653df21cb
vm: remove math::bignum_producer.
2011-10-11 21:24:38 -07:00
John Benediktsson
afc07c0e05
io.binary: make le> and be> faster (20% and 75%, respectively).
...
Removed primitive byte-array>bignum and digit_stream_to_bignum from vm/.
2011-10-11 21:13:30 -07:00
Slava Pestov
f8e475485a
Add RT_INLINE_CACHE_MISS relocation type to avoid frequent dlsym lookups when compiling PICs. Fixes #123
2011-10-03 00:26:21 -07:00
Slava Pestov
05f7419f2f
Rework non-optimizing compiler backend to use compiler.codegen.relocation
2011-10-03 00:26:21 -07:00
Slava Pestov
daf40ea0c6
Fix infinite loop and empty-dlist error when an error is thrown from a callback running in a thread other than the initial thread. This addresses part of issue #92
2011-10-02 21:59:09 -07:00
Doug Coleman
bf2a96e9e0
Remove Windows CE from core/ basis/ and build-support/
...
Rename the winnt singleton to windows in core/ basis/ extra/
Rename boot images winnt -> windows
Fixes #84 .
2011-09-18 23:19:06 -05:00
Slava Pestov
bbe369ebfa
Fix undefined-symbol reporting on 32-bit architectures; the return address is exactly at the relocation point in this case
2011-09-13 20:43:07 -07:00
Slava Pestov
10845ebfb9
callstack.cpp: fix fat-fingered typo from undefined-symbol change
2011-09-12 23:15:09 -07:00
Slava Pestov
7c3827190b
Tease out symbol name and library in undefined_symbol() handler, for friendlier errors when calling an unresolved C function name. Fixes #93
2011-09-12 00:56:24 -07:00
Slava Pestov
104583f888
Remove inotify system call wrappers. Hopefully everyone is using a recent glibc now. Fixes #86
2011-09-08 22:03:56 -07:00
Slava Pestov
0f5e0eada5
vm: fix high_fragmentation_p assertion
2011-09-05 23:30:28 -07:00
Slava Pestov
83b8717bad
Clean up some GC logic and fix a bug where large object allocation could grow the heap unnecessarily
2011-09-05 16:28:00 -07:00
Erik Charlebois
679b03f8db
Remove unnecessary -std=gnu99
...
Flag isn't needed anymore with g++ and it causes warnings with clang.
2011-06-23 01:17:24 -04:00
Erik Charlebois
64252dbdbc
32 and 64 bit Linux PPC support
2011-05-23 23:36:14 -04:00
Slava Pestov
c36d73e242
Change do-callback to register the current thread with the callback, instead of busy waiting for the current callback to become the right one before returning. Fixes 100% CPU usage issue with system-alert. Thanks to Blei and ex-rzr for doing preliminary analysis of the issue
2011-04-12 21:48:54 -04:00
Slava Pestov
d6fe7f4c28
On Unix, link VM with GTK libraries instead of loading them dynamically
2011-02-27 20:01:54 -06:00
Slava Pestov
f27080498d
Remove bignum>float VM primitive, and use bignum/f to implement >float on bignums instead, for a slight accuracy gain. Also, bignum/f now has a more efficient post-scaling algorithm to break the circular dependency on bignum>float
2010-11-24 22:41:15 -08:00
Slava Pestov
813e13140a
vm: fix 64-bit regression
2010-10-09 15:14:14 -07:00
Slava Pestov
0fc8ee8250
Fix win64 compile error
2010-10-09 16:03:46 -05:00
Slava Pestov
f7bc78c9f7
vm: fix Config.windows
2010-10-02 23:50:48 -05:00
Doug Coleman
8a0d0fca83
Revert previous patch; not simply a typo. Still broken on win64.
2010-09-29 20:49:37 -05:00
Doug Coleman
466e630dc9
Win64 Windows SDK hates int/cell type errors
2010-09-29 17:43:27 -05:00
Slava Pestov
794d371444
vm: fix compiler warning
2010-09-27 20:37:37 -07:00
Slava Pestov
6b5fffc026
compiler: preliminary implementation of tracking derived pointers in GC maps
2010-09-27 20:12:44 -07:00
Slava Pestov
8ccaa417ab
vm/os-unix.cpp: remove dead code
2010-09-20 21:36:19 -07:00
Doug Coleman
f791c8c5d2
Squashed commit of the following:
...
commit 197dbe9a6733775ac0ea19b3da4bd4dc3c85418c
Author: Doug Coleman <doug.coleman@gmail.com>
Date: Sat Sep 18 19:01:38 2010 -0500
Fix bootstrap, move privileges to windows.privileges
commit 521c622f8afb15bf42d263c738cb990560dc29cb
Author: Doug Coleman <doug.coleman@gmail.com>
Date: Sat Sep 18 18:26:30 2010 -0500
Hopefully fix bootstrap
commit eb3f22928b59758b9505430034044b5b94705da2
Author: Doug Coleman <doug.coleman@gmail.com>
Date: Sat Sep 18 18:19:05 2010 -0500
Remove wince from factor codebase
commit 619d6c99415f46208a7ede6a04b0ccda46b15360
Author: Doug Coleman <doug.coleman@gmail.com>
Date: Sat Sep 18 16:07:46 2010 -0500
Remove Windows CE from vm/
2010-09-19 19:13:25 -05:00
Slava Pestov
a36bd7fbaf
vm: don't keep more than 10 unused contexts around to prevent address space wastage on low-budget operating systems like OpenBSD
2010-09-17 20:52:27 -07:00
Slava Pestov
e8b1a06dad
vm: a stack underflow inside a primitive could leave a data root in an uninitialized state; if allocating the thrown underflow error triggered a GC, the GC would visit a garbage pointer
2010-09-17 19:46:57 -07:00
Slava Pestov
5378f2a0c7
vm/os-unix.cpp: set pipe file descriptors to close on exec
2010-09-15 22:20:24 -07:00
Slava Pestov
c4fa0c2507
vm: fep g command prints addresses in h hex for readability
2010-09-09 20:36:50 -07:00
Slava Pestov
ecb9ce4fc9
vm: don't need to save/restore FPU state when doing GC anymore, since we don't call nano_count() unless GC events are being recorded. If you want to record GC events with FP traps on, you're out of luck
2010-09-04 16:16:22 -05:00
Slava Pestov
2498a4d881
vm: don't call nano_count() from the GC at all, unless GC event recording is on
2010-09-04 13:21:45 -07:00
Slava Pestov
230064af3a
vm: increase default code heap size
2010-09-04 12:05:23 -07:00
Slava Pestov
7b35f82bf4
vm: fix crash when doing GC with profiling enabled
2010-09-03 21:54:40 -05:00
Slava Pestov
7374d868e7
Change how SIGPIPE is ignored, and add a unit test to io.launcher.unix to ensure that this ignoredness is not inherited by child processes
2010-09-02 22:11:45 -07:00
Slava Pestov
d74817cedf
vm: Remove signal_callstack_top nonsense
2010-09-02 22:57:17 -05:00
Slava Pestov
1818bcb780
Fix three problems discovered by running math.floats.env tests in a loop:
...
- Crash if allocating error triggers a GC from a signal/SEH handler
- Crash if GC runs with floating point traps enabled on Windows
- Floating point traps didn't prettyprint properly
2010-09-02 22:57:14 -05:00
Slava Pestov
f1bec796bb
vm: C I/O streams became unusable after a single EOF (reported by John Benediktsson)
2010-08-22 20:56:29 -07:00
Slava Pestov
1985705413
compiler: now that FFI has been deconcatenatized, we no longer need the special ##unary-float-function and ##binary-float-function fastpaths
2010-08-13 23:59:19 -07:00
Slava Pestov
c3ae7f3a11
vm: hard tabs, indent width 8
2010-08-02 20:50:34 -04:00
Slava Pestov
451237a028
Fix start-context-and-delete sub-primitive (reported by Sascha Matzke)
2010-08-02 20:28:23 -04:00