Björn Lindqvist
183ec83a6d
VM: possible fix for #1319 .
...
Fix for reset_context() so that the top two stack items are never
removed from the stack so if the parent->init_context(ctx) call triggers
a GC, those items are never collected.
2015-05-22 12:22:27 -07:00
Björn Lindqvist
016614747d
VM: the delete_context() and reset_context() api functions can be
...
simplified a bit
The functions always operates on parent->ctx, so passing a context*
parameter is redundant. This enables shorter assembly code for
the (start-context-and-delete) and (set-context-and-delete) primitives.
2015-05-22 12:22:26 -07:00
Björn Lindqvist
6ca83e7588
Reorganising bootstrap files
...
All the bootstrap.factor scripts in cpu/ are run by the bootstrap to
make boot images, but aren't used otherwise. So I think it's cleaner to
put them in one directory inside the bootstrap hierarchy.
2015-05-22 12:22:24 -07:00
Björn Lindqvist
bf7161604e
VM: simplified logic in data_heap_checker
2015-05-17 07:59:34 +02:00
Björn Lindqvist
3887b58c02
VM: cleanups, like removing redundant paranthesis and removing method
...
declarations that doesn't exist
2015-05-09 20:04:22 -07:00
Björn Lindqvist
a6e2834252
VM: refactoring to use the visit_object_array method
2015-05-09 20:04:21 -07:00
Björn Lindqvist
0a6486ef78
VM: the aging_policy and nursery_policy classes are so small that they
...
can be in the same cpp file with the methods that use them
2015-05-09 20:04:21 -07:00
Björn Lindqvist
e4bb3058e0
VM: the copying_collector only contained one method, so it can easily be
...
merged with its base class
2015-05-09 20:04:21 -07:00
Björn Lindqvist
685a795aa0
VM: to_tenured_collector isn't needed, it's just a normal collector instance
2015-05-09 20:04:21 -07:00
Björn Lindqvist
9bfc43144e
VM: debug macros FACTOR_PRINT and FACTOR_PRINT_MARK to make better debug
...
printing messages than just using std::cout
2015-05-09 20:04:21 -07:00
Björn Lindqvist
fa0ff77c45
VM: reset the unused parts of the data and retain stack segments with a bit pattern (good for debugging)
2015-04-29 09:31:54 -07:00
Björn Lindqvist
acc1bd3221
compiler.*: removing the check-d and check-r slots from gc-map and adjusting code that depended on those
2015-04-29 09:31:53 -07:00
Björn Lindqvist
2cd2aa498a
VM: the compiler doesn't emit any live overinitialized locations anymore
...
Any overinitialized location immediately becomes garbage and is not
reused again. This is very nice because then the gc maps can be
simpler again.
2015-04-29 09:31:53 -07:00
Björn Lindqvist
1d251f7b6a
VM: new function visit_object to replace trace_object
2015-02-28 14:14:30 -08:00
Björn Lindqvist
6b29c0ea00
VM: refactoring to remove redundancy in retainstack|datastack_to_array
2015-02-28 14:14:30 -08:00
Björn Lindqvist
0798928996
VM: cleanup of some infrequently used functions that can be replaced with direct code
...
also replacing some bitshifts with easier to understand multiplies and
divides, they are equally fast nowadays
2015-02-28 14:14:30 -08:00
Björn Lindqvist
ab75e3b05d
VM: splits out the little ugly scan_next-object + goto-loop into a function trace_card()
2015-02-28 14:14:30 -08:00
Björn Lindqvist
8e91ca3e31
VM: simplification of the trace_partial_objects function
2015-02-28 14:14:30 -08:00
Björn Lindqvist
a43a455990
VM: the unmarker classes are not needed, easier to just send the unmask pattern to the trace_cards function directly
2015-02-28 14:14:30 -08:00
Björn Lindqvist
b5a206c587
VM: new function visit_mark_stack() to factor out the mark stack iteration
2015-02-28 14:14:29 -08:00
Björn Lindqvist
667e5768ba
VM: it's confusing that slot_visitors are called "workhorse" sometimes, let's standardize the name "visitor"
2015-02-28 14:14:29 -08:00
Björn Lindqvist
5490c50217
VM: visit_roots and visit_contexts where always called in tandem, make a new method visit_all_roots that calls them both
2015-02-28 14:14:29 -08:00
Björn Lindqvist
f5dc4afb2e
VM: better error message in case factor_vm::store_external_address fails
2015-01-28 14:58:22 +00:00
Björn Lindqvist
434e4ef4b7
VM: fix the debug printing so that instead of always printing to std::cout, you supply the stream to print to
2015-01-28 14:58:21 +00:00
Björn Lindqvist
d18c48c75b
VM: possible fix for #1265 . the size of the stack frame appears to have been miscalculated in iterate_callstack which this commit fixes.
2015-01-15 09:29:14 +00:00
Björn Lindqvist
ee5fd49b9e
VM: simplified fixup_gc_workhorse::fixup_data by mering lots of functions only used once
2015-01-15 09:29:14 +00:00
Björn Lindqvist
8ea1eea4e1
VM: instead of passing around the trace_contexts_p arg, just clear the contexts in primitive_save_image_and_exit() it has the same effect but is simpler
2015-01-15 09:29:14 +00:00
Björn Lindqvist
4d7bc4c169
VM: merge of slot_visitor and code_block_visitor
...
Looks like there is no reason for them to be separate classes and by
merging them you can simplify lots of code.
2015-01-15 09:29:14 +00:00
Björn Lindqvist
d2aea0f606
VM: replaced the reset_generation() generic method with one method for each generation
2015-01-15 09:29:14 +00:00
Björn Lindqvist
dc9e937beb
VM: vm::iterate_active_callstacks is only used once, so it's simpler if the code body is "inline"
2015-01-15 09:29:14 +00:00
Björn Lindqvist
b61eaa8a16
VM: the full_collector class isn't needed since it is only used once
2015-01-15 09:29:14 +00:00
Björn Lindqvist
693e8ad33a
VM: the clear_mark_bits methods are only called once -- make the calls inline instead
2015-01-15 09:29:14 +00:00
Björn Lindqvist
fb9fa12cdd
VM: change the definition of entry_point in word and quotation from void* to cell
...
this gets rid of lots of redundant casts from void* to cell
2015-01-15 09:29:13 +00:00
Björn Lindqvist
f0bf693beb
VM: free_list_allocator::first_block, last_block and next_block_after can be refactored away
2015-01-15 09:29:13 +00:00
Björn Lindqvist
1beac119d8
VM: removes the template parameter from mark_bits
...
since mark_bits only deals with arithmetic on memory addresses, it
doesn't need to be specialized so it can be untemplateized
2015-01-15 09:29:13 +00:00
Björn Lindqvist
af270cb4d8
VM converts the methods callstack::frame_top_at and code_block::offset to use cells instead of void*'s
2015-01-15 09:29:13 +00:00
Björn Lindqvist
615420fe61
VM: calls to visit_code_roots() replaced with visit_uninitialized_code_blocks()
2015-01-15 09:29:13 +00:00
Björn Lindqvist
eb7a5ab1ba
VM: some more fixing to make the types match better, converting void* to cell
2015-01-15 09:29:13 +00:00
Björn Lindqvist
e47181e87a
VM: change type of callstack_top and callstack_bottom from void* to cell
...
cell and void* is always the same size, but now you can remove lots of
redundant type casts from void* to cell.
2015-01-15 09:29:13 +00:00
Björn Lindqvist
a6e191a490
VM: the frame_return_address and set_frame_return_address functions aren't needed (clearer to read/write the pointers directly)
2015-01-15 09:29:13 +00:00
Björn Lindqvist
11e906139b
VM: code_block::scan, make it so the method always returns -1 if scan can't be determined, part of the fix for #1265
2015-01-15 09:29:13 +00:00
Björn Lindqvist
8ee1f890f2
VM: refactoring intended to remove trace_*-methods that are just
...
simple delegations to the data/code_visitor instances
2015-01-15 09:29:12 +00:00
John Benediktsson
025283f252
vm: store full command-line including executable first argument.
2014-12-22 22:39:52 -08:00
John Benediktsson
70778b89ae
Revert "VM: always clear the data and retainstack in general_error because they might contain uninitialized values ( #1187 )"
...
This reverts commit 378f208025
.
2014-12-04 11:46:28 -08:00
Doug Coleman
875d2421df
vm: We don't want ambiguity for which print triggered on a gc error. Differentiate the error messages.
2014-12-04 10:35:32 -08:00
Björn Lindqvist
378f208025
VM: always clear the data and retainstack in general_error because they might contain uninitialized values ( #1187 )
2014-12-04 10:26:23 -08:00
Björn Lindqvist
1cec8a7814
VM: modifying the uninitialized_blocks map in place instead of creating a new one is more efficient
2014-12-04 10:23:34 -08:00
Björn Lindqvist
451fc12411
VM: redundant if, trace_cards() doesnt do anything for empty generations anyway
2014-12-04 10:23:33 -08:00
Björn Lindqvist
93134b949f
VM: the aging_collector and nursery_collector classes aren't needed because they are just simple instatiations of copying_collector
2014-12-04 10:23:33 -08:00
Björn Lindqvist
423e983514
VM: refactoring to get rid of the megamorphic_call_stub and check_code_pointer() words
2014-12-04 10:23:33 -08:00
Björn Lindqvist
885b5c7043
VM: no need for a nursery_space class, it's just a bump_allocator
2014-12-04 10:23:33 -08:00
John Benediktsson
4837ceebb4
vm: fix OS X issue with using symlinks from outside $factor.
2014-12-03 19:19:52 -08:00
Doug Coleman
c675694619
vm: Annotate more places where we can gc.
...
Code formatting fix.
2014-11-29 19:25:46 -06:00
Björn Lindqvist
231f50039b
VM: move next_object_after() and first_object() to aging_space (no iteration possible in nursery)
2014-11-21 02:16:04 -08:00
Björn Lindqvist
50c74fc496
VM: get rid of the duplicated nursery instance in vm->data->nursery
...
vm.nursery and vm->data->nursery are different objects. They get out
of sync when Factor code bumps vm.nursery but leaves vm->data->nursery
unchanged. The emptiness of vm->data->nursery meant that each_object()
never iterated it.
2014-11-21 02:16:03 -08:00
Björn Lindqvist
2a5e1e06f3
VM: each_object() can't iterate the nursery so instead we assume it's empty
2014-11-21 02:16:03 -08:00
Björn Lindqvist
2095fd57de
VM: FACTOR_ASSERT so that data_root never wraps a null pointer, cause if it does, random crashes can happen
2014-11-17 17:27:36 -08:00
Björn Lindqvist
161eb0bb49
VM: fixed bignum_divide_unsigned_large_denominator so that it wont data_root-protect NULL-pointers
2014-11-17 17:27:36 -08:00
Björn Lindqvist
f9869d8ad9
VM: remove bignum_roots.clear() (snuck in during rebase)
2014-11-17 17:27:36 -08:00
Björn Lindqvist
0e8e2af0a7
VM: adding a few forgotten .untagged() calls
2014-11-17 17:27:36 -08:00
Björn Lindqvist
8741dbefce
VM: bignum_roots traversal code deleted!
2014-11-17 17:27:35 -08:00
Björn Lindqvist
981a02be27
VM: Erasing the last traces of GC_BIGNUM from bignum.cpp
2014-11-17 17:27:35 -08:00
Björn Lindqvist
1f6d6b9a5d
VM: cell -> ret
2014-11-17 17:27:35 -08:00
Björn Lindqvist
7d6f282d91
VM: conversion of many more bignum.cpp methods to use data_roots instead
...
of gc_bignum
2014-11-17 17:27:35 -08:00
Björn Lindqvist
2fcea047d2
VM: bignum_new_sign, bignum_maybe_new_sign and bitnum_magnitude_ash
...
converted to using data_roots
2014-11-17 17:27:35 -08:00
Björn Lindqvist
c6ab72effc
VM: windows bignum_gcd variant fixed
2014-11-17 17:27:35 -08:00
Björn Lindqvist
a4df09a34e
VM: a lot of methods in bignum.cpp converted to use data_roots instead of gc_bignums
2014-11-17 17:27:35 -08:00
Björn Lindqvist
441a4595bb
VM: the copy assignment operator is overloaded so you need a custom swap
2014-11-17 17:27:34 -08:00
Björn Lindqvist
8beb4e179d
VM: change the BIGNUM_TO_POINTER macro so that it automatically sees through tagged pointers
2014-11-17 17:27:34 -08:00
Björn Lindqvist
e862f70a16
VM: reallot_array already data_roots the array, so callers don't need to
...
do it too
2014-11-17 17:27:34 -08:00
Björn Lindqvist
8489dd9be6
Build: other hpp's use utilities.hpp so it must be included earlier
2014-11-12 19:41:32 -08:00
Doug Coleman
11be8734cb
GNUmakefile: Remove LIBPATH from the build system since nothing needs it. Fixes #1192 .
2014-11-11 00:05:52 -08:00
Björn Lindqvist
4e63ba8dc8
VM: debug code which memsets the resetted space
2014-11-10 23:23:43 -08:00
Björn Lindqvist
d63a6a20ee
ffi: test functions for bug #1021
...
Conflicts:
vm/ffi_test.c
vm/ffi_test.h
Note: Let's add tests in basis/compiler/tests/alien.factor for this.
2014-11-10 23:22:35 -08:00
Björn Lindqvist
990af22dc6
VM: renamed version and git-label to vm-version and vm-git-label.
2014-11-10 23:02:13 -08:00
Björn Lindqvist
090f4fddd5
VM: Three new special objects added to keep track of the builds version number, git label and compilation time respectively. The info is exposed in the system:version-info word and also shown in the banner during startup.
...
Conflicts:
Nmakefile
basis/ui/tools/listener/listener.factor
core/alien/strings/strings.factor
2014-11-10 23:01:52 -08:00
Doug Coleman
53eac53626
vm: Fail with out_of_memory() if mprotect returns ENOMEM.
...
Add a message to out_of_memory(msg) calls so we know which call caused the OOM.
Fixes #664 .
2014-11-11 06:26:55 +00:00
Doug Coleman
466fe4559d
ffi_test: Can actually test 62 and 63 on windows.
2014-11-10 10:30:35 -08:00
Doug Coleman
1107edcc52
ffi_test: Fix compilation on Windows.
2014-11-09 10:39:50 -08:00
Doug Coleman
1b5711cc42
compiler.tests.alien: Add structs with uint and ulonglong pairs and return them from an FFI call. macosx32 seems to be working, hopefully this will break it or confirm that it's working. Linux32 is broken, hopefully this will show how.
2014-11-08 13:39:47 -08:00
Doug Coleman
0244a64d83
vm: Oops, test doesn't take a long long.
2014-11-07 15:42:25 -08:00
Doug Coleman
e494e3965b
compiler.tests.alien: Check in a failing unit test. Structure is getting returned improperly.
2014-11-07 15:34:10 -08:00
Björn Lindqvist
e00798cd2a
VM: new primitive free-callback which is able to free a callback
...
previously allocated using <callback>
2014-09-29 07:30:21 -07:00
Björn Lindqvist
4a96e6163b
VM: new primitive (callback-room) for querying the VM about memory usage
...
The word works exactly like (code-room) except it looks at the memory
usage in the callback heap instead of the code heap.
2014-09-29 07:30:21 -07:00
Björn Lindqvist
85dade6914
VM: use a free_list_allocator for the callbacks, that way they can
...
individually be freed
2014-09-29 07:30:20 -07:00
Björn Lindqvist
4015565cf6
VM: "formalize" the callback_heaps object allocation using a
...
bump_allocator<code_block>
The advantage of doing it this way is that you can reuse the existing
each_object method to iterate all callbacks
2014-09-29 07:30:20 -07:00
Björn Lindqvist
4867e7bc96
VM: try and recover with a kernel error from the callback heap running out
2014-09-29 07:30:20 -07:00
Björn Lindqvist
b90e52b527
VM: GC_BIGNUM must be called in the same scope as the variable declaration
2014-09-17 12:13:05 -07:00
Björn Lindqvist
237772daae
VM: dont scrub and check when visiting a callstack object
...
callstack objects doesn't have stacks so it doesn't make sense to scrub
and check. also added the methods check_stack and scrub_stack to deal
with code duplication
2014-09-08 14:54:18 -07:00
Björn Lindqvist
e3c2704986
VM: silly error: should be index * check_r_count, not index + check_r_count
2014-09-08 14:54:18 -07:00
Björn Lindqvist
9836d6a1d0
VM: move the stack scrubbing logic to call_frame_slot_visitor to avoid visiting the callstack twice
...
primitive_minor_gc() iterates the stack twice, first to scrub stack
locations, then to trace overinitialized ones and gc roots. By running
visit_callstack() before visit_stack_elements() you only need to do it
once.
2014-09-08 14:54:18 -07:00
Björn Lindqvist
8fb8313251
VM: use the check_d and check_r to trace the overinitialized stack locations
2014-09-08 14:54:18 -07:00
Björn Lindqvist
8c0f9698de
compiler.codegen.gc-maps: check-d>> and check-r>> now used in the code generator
...
the approach looks sound and now the gc can be fixed to take advantage
of the extra info.
2014-09-08 14:54:17 -07:00
Björn Lindqvist
48bf3a9ab4
VM: moves the code that clears the roots to the same function that
...
corrupts the stack
2014-07-23 07:12:28 -07:00
Doug Coleman
fe548d9ed7
os-unix.hpp: Use the old strerror_r insetad of the newfangled one.
2014-07-16 17:08:02 -07:00
Björn Lindqvist
810031b02c
VM: data_roots must be empty before unwind_native_frames is called because it doesn't return
2014-07-16 14:54:35 -07:00
Björn Lindqvist
655dcee2d8
VM: clear the local roots before garbage collection in general_error()
...
If we got here from memory_protection_error(), then the stack pointer
has been fiddled with and the elements of these vectors, which address
stack-allocated objects, are bogus and needs to be resetted.
2014-07-16 14:54:29 -07:00
Björn Lindqvist
60b7631e76
VM: fixing some implicit casts from cell to fixnum
...
The types are compatible, but it looks a little nicer if the variable
that receives a return value declared as cell also is a cell.
2014-07-10 07:54:07 -07:00
Doug Coleman
07aa2831a2
ffi_test: Export test 59 and 60 for Windows.
2014-07-07 20:53:33 -07:00
Doug Coleman
beb2d1df3a
ffi: Add some tests to ensure that 64bit integers are handled properly.
2014-07-07 17:02:36 -07:00
Doug Coleman
6244b925c7
vm: Simplify strerror code.
2014-07-05 18:58:24 -07:00
Doug Coleman
ecbf48d1ef
vm: Fix namespace brace.
2014-07-04 03:14:17 -07:00
Doug Coleman
69262be4d8
vm: Add threadsafe_sterror to the vm.
2014-07-04 03:00:08 -07:00
Doug Coleman
bc54927859
vm/image.cpp: Better error for opening a file for writing.
2014-07-03 22:32:45 -07:00
Doug Coleman
e558bd7d86
vm: Fix compilation on Windows. Fixes #1086 .
2014-07-03 13:20:08 -05:00
Steven Stewart-Gallus
e6dade3f94
Lower the stack usage of a few functions
...
In vm/compaction.cpp I rescoped some variables to lower the stack usage
from 592 to 560 bytes. I wasn't very successful with this. The stack
usage is larger than it looks because methods on the structures used
take an implicit this pointer and a reference to the data (so the data
has to live out it's full scope and can't be put in a register).
In vm/debug.cpp I made a large (1024 bytes) stack allocated buffer
simply dynamically allocated.
In vm/os-unix.cpp I rescoped signal handling structures to not coincide
with each other and reduced a very large (1024 bytes) amount of stack
usage to less than 500 bytes.
2014-06-19 14:55:57 -07:00
Doug Coleman
2834bc90f8
bignum.cpp: Fix regression in bignum conversion. Fixes #1072 .
2014-06-16 20:52:51 -07:00
Björn Lindqvist
a6e0867b22
VM: change type of bignum_roots and remove unnecessary not-null checks
...
Declaring bignum_roots to contain bignum** instead of cell avoids some
superfluous casts. Casting it to cell is wrong because the items in it
are never tagged. And due to a earlier commit, bignum_roots will never
contain NULL:s so checking for them is not needed.
2014-06-12 13:50:10 -07:00
Björn Lindqvist
8ac3b80173
VM: rename all variables named "bignum" in bignum.cpp to "bn"
...
The name can cause compiler errors because it's the same as the type
name. It only matters in some functions, but I like consistency so I
renamed it everywhere.
2014-06-12 13:50:10 -07:00
Björn Lindqvist
75129d34ad
VM: refactor bignum.cpp so that GC_BIGNUM is never called on a NULL
...
pointer
The purpose of this fix is to ensure that no NULL checks are needed when
traversing the bignum_roots vector.
2014-06-12 13:50:10 -07:00
Björn Lindqvist
0c9e61ca99
VM: refactoring that removes data_root_ranges
...
instead of storing data_root_ranges in data_roots, you can just store
cell pointers directly. the advantage with doing it that way is that
registration and traversal code becomes simpler (and slightly faster).
2014-06-12 13:50:10 -07:00
John Benediktsson
f0e878e3fa
Revert "vm: fix bignum_to_fixnum_strict for BIGNUM_ZERO."
...
This reverts commit 0a66016c7db3c8c02af609d7c46411dc05a7b0dd.
2014-06-08 16:32:35 -07:00
John Benediktsson
ad7ee60341
vm: fix bignum_to_fixnum_strict for BIGNUM_ZERO.
2014-06-08 16:05:36 -07:00
John Benediktsson
82f9f21a50
vm: change some push/pop to replace/peek.
2014-06-07 12:16:43 -07:00
John Benediktsson
e9e1fd4e6a
vm: generate a to_fixnum_strict to workaround an odd io.monitors issue.
2014-06-07 12:06:03 -07:00
John Benediktsson
eeaa91d6c1
vm: using bignum>fixnum-strict in integer>fixnum-strict.
2014-06-07 09:46:05 -07:00
Björn Lindqvist
d225bec128
VM: CELL_TO_FOO macro-magic in the same spirit as BIGNUM_TO_FOO
...
Now also factor_vm::to_cell doesn't piggyback on
factor_vm::to_fixnum's (strict) conversion.
2014-06-07 17:04:27 +02:00
Björn Lindqvist
1300a27dca
VM: better version of bignum_to_fixnum_strict that doesn't allocate
2014-06-07 13:09:00 +02:00
Björn Lindqvist
a9a52d9174
VM: bignum_to_fixnum_strict and an accompanying vm error in case the conversion fails
2014-06-07 12:13:59 +02:00
Björn Lindqvist
877e3a12e1
VM: allot_array_1, allot_array_2 are unused and primitive_array should use allot_array
2014-06-07 12:13:59 +02:00
Björn Lindqvist
03672ad938
VM: refactored factor_vm::unbox_array_size()
2014-06-07 12:13:59 +02:00
John Benediktsson
7ff81f620b
vm: optionally set CC and CXX on macosx.
2014-06-06 15:13:48 -07:00
John Benediktsson
6c703bbd6c
vm: adding a fast path for bignum sq.
2014-06-06 10:45:09 -07:00
Björn Lindqvist
6627a3327b
kernel: symbolic constants for the various kernel errors
2014-06-04 23:16:40 +02:00
John Benediktsson
fd1dc5ce01
vm: formatting of sign_mask.
2014-06-02 07:54:01 -07:00
John Benediktsson
c2c6225955
vm: fix tabs-to-spaces.
2014-06-02 07:24:14 -07:00
John Benediktsson
cf287f4144
vm: faster foo_to_bignum for common case of one bignum digit.
2014-06-02 07:16:43 -07:00
Doug Coleman
c3210f9f4f
Windows: Add two new targets, x86-32-vista and x86-64-vista for bjourne's
...
ctrl-c patch. We still support Windows XP by default for now. Closes
2014-05-10 18:13:20 -07:00
Björn Lindqvist
0226718a82
VM: attempt to cancel blocking system calls when ctrl-c is pressed
...
Windows runs ctrl-c in its own thread and doesn't by itself interrupt
blocking system calls when it is pressed. Therefore you have to manually
send an interrupt signal to the stuck thread.
2014-05-10 18:13:04 -07:00
Doug Coleman
57611f78d3
code_blocks: Same error message in two places, make it clear which is triggering.
2014-05-07 14:02:14 -07:00
Björn Lindqvist
9780012f55
dlopen using RTLD_GLOBAL
2014-04-21 23:45:45 -07:00
Doug Coleman
19685f4528
vm: jit::jit is a c++ constructor but it does not allocate objects to the Factor heaps.
...
Add annotations for gc allocating.
2014-02-14 20:29:26 -08:00
John Benediktsson
0dda4fc812
vm: speed up bignum log2.
2013-12-06 14:40:22 -08:00
Doug Coleman
1ad2e058d1
alien.cpp: Add comment about allocation.
2013-11-28 10:59:45 -06:00
Doug Coleman
268fa0225d
os-windows: Remove FACTOR_DLL which is NULL and only used in one place.
2013-11-24 22:06:57 -06:00
Doug Coleman
0a5cdfa3e6
vm: init_parameters_from_args calls default_parameters already.
2013-11-24 22:06:57 -06:00
Erik Charlebois
40fcee3f16
VM: Fix Windows 64-bit build on Visual Studio 2012
...
The UNW_FLAG_EHANDLER #define is now visible in VS2012, causing
a conflict with the definition in os-windows-x86.64.cpp. Added
a #ifndef to only include the definition if it hasn't already
been defined.
2013-05-13 18:19:52 -04:00
Erik Charlebois
5027f75d79
VM: Fix Windows VM build following type renaming
...
Making cell be a typedef of uintptr_t broke a spot assigning
cell* was unsigned long*. Added an explicit cast.
2013-05-13 18:18:48 -04:00
Erik Charlebois
ffe41b3d7f
VM: Fixup cast formatting after clang-format
...
clang-format doesn't recognize casts to non-pointer/non-template types
so it winds up adding a space between the right paren and the expression
and then failing to recognize prefix operators in the process
(e.g. foo = (cell) & bar; should be foo = (cell)&bar;). This commit
manually fixes up the major cases (fixnum, cell, all types ending in _t).
2013-05-13 14:59:24 -04:00
Erik Charlebois
88d7c10d03
VM: Replace u8-64, s8-64, cell, fixnum with stdint.h equivalents
2013-05-13 00:28:25 -04:00
Erik Charlebois
7ea2150c39
VM: Remove WINCE #ifndef; fold wince? words
2013-05-13 00:01:46 -04:00
Erik Charlebois
b918c3e646
VM: Remove redundant #ifdef FACTOR_DEBUGs
...
FACTOR_DEBUG checks around asserts aren't needed, since FACTOR_ASSERT is
already conditionally defined by FACTOR_DEBUG.
2013-05-12 23:44:32 -04:00
Erik Charlebois
7b1b1eef23
VM: Remove unnecessary _ suffix in constructors
2013-05-12 23:20:43 -04:00
Erik Charlebois
26ff071205
VM: Remove unnecessary explicit keywords
2013-05-12 21:48:38 -04:00
Erik Charlebois
d44127b543
VM: Refactor write_barrier.hpp to Factor style
2013-05-12 13:24:48 -04:00
Erik Charlebois
38c9db88e2
VM: Refactor words.cpp to Factor style
2013-05-12 13:24:48 -04:00
Erik Charlebois
5614985c3d
VM: Refactor vm.cpp/hpp to Factor style
2013-05-12 13:24:48 -04:00
Erik Charlebois
8522265169
VM: Refactor utilities.cpp/hpp to Factor style
2013-05-12 13:24:48 -04:00
Erik Charlebois
5b1a9d753e
VM: Refactor tuples.cpp/hpp to Factor style
2013-05-12 13:24:48 -04:00
Erik Charlebois
93b586da31
VM: Refactor to_tenured_collector.cpp/hpp to Factor style
2013-05-12 13:24:47 -04:00