Commit Graph

1782 Commits (b79490b06301cac8f5a45018d512de496dbd686e)

Author SHA1 Message Date
Björn Lindqvist 4cc5e90605 VM: SNPRINTF macro is not used 2016-05-02 15:01:49 +02:00
Björn Lindqvist 2035eb91fe VM: method compute_identity_hashcode is not needed 2016-05-02 14:05:01 +02:00
Björn Lindqvist eb8b7f02bf VM: the start_factor method isn't needed 2016-05-01 23:36:41 +02:00
Björn Lindqvist 58ad5fb4ce VM: all the started_<blah>() replaced with reset_timer() 2016-04-24 15:21:17 +02:00
Björn Lindqvist 82e2de5e12 VM: oops, fix compilation error i caused 2016-04-24 15:18:45 +02:00
Björn Lindqvist c55af9b957 VM: object_size, compute_entry_point_address, code_block_owner made into
functions

It is to make the vm class less heavy
2016-04-24 14:45:03 +02:00
Björn Lindqvist 82658e184f VM: make return_takes_param() a function 2016-04-24 14:19:35 +02:00
Björn Lindqvist 28b5378196 VM: merge of fixup_data & fixup_code into a new method fixup_heaps 2016-04-24 12:42:22 +02:00
Björn Lindqvist c8d648f3f2 VM: the factor_vm::code_blocks() method isn't needed 2016-04-22 12:01:26 +02:00
Björn Lindqvist bcc32291e8 VM: merge of free_list_allocator.hpp into free_list.hpp
It's better if all the free list stuff is in a single header.
2016-04-22 12:01:26 +02:00
Björn Lindqvist a23bb8cf16 VM: nr of code blocks scanned always = points_to_<gen>.size() 2016-04-22 12:01:26 +02:00
Björn Lindqvist 70e7bad921 VM: parent and code attrs in collector struct is not used 2016-04-22 12:01:26 +02:00
Björn Lindqvist da4812ba21 VM: refactoring which removes two not useful short methods 2016-04-04 23:32:23 +02:00
Doug Coleman b324c30cc7 vm: Fix four compile warnings reported by gcc with -pedantic flag. 2016-03-30 15:39:42 -07:00
Björn Lindqvist 10ac4da0f6 VM: fixes to make some if-else statements read better 2016-03-31 00:37:59 +02:00
John Benediktsson 02956a25ce vm: compact-gc was checked twice. 2016-03-28 22:28:57 -07:00
Björn Lindqvist 9a531076f0 VM: improved vm_executable_path which works for arbitrary long paths 2016-03-23 16:15:30 +01:00
Björn Lindqvist 83e1ee5084 VM: fix string copying to not use PATH_MAX here 2016-03-23 16:15:29 +01:00
Björn Lindqvist 4f33f22b56 VM: on errors, only dump the heap if it has been initialized 2016-03-23 01:56:40 +01:00
Björn Lindqvist 579875821b VM: removes the OBJ-ERROR special object in favor of a constant
The special object contained the string "kernel-error" which were used
to tag VM errors. But it is simplier and removes a little complexity to
just tag them with a fixnum constant.
2016-03-22 17:52:19 +01:00
Björn Lindqvist 2f1e963587 Build: never dynlink with gui libs 2016-03-11 05:17:04 +01:00
Doug Coleman 7488e54825 math.cpp: Fix two warnings. Fixes #1549. 2016-03-08 10:02:28 -08:00
Jon Harper 13ba081ac8 primitive_format_float, return empty string on bad locale instead of C++ exception 2016-03-08 07:55:25 -08:00
Jon Harper 19fadb6c96 prettyprinter, locale independant float printing 2016-03-08 07:55:25 -08:00
Doug Coleman 5813e8384e command-line.startup: document more command line flags. we already have -nosignals, but it was hidden in the source code. Fix spacing for default image. Closes #1514. 2016-03-03 17:16:39 -08:00
Doug Coleman 67eb64cf00 vm/contexts.cpp: We are only deleting half the contexts because we increment the iter twice per loop! Fixes #1534. Thanks clang! 2016-03-01 00:19:43 -08:00
Björn Lindqvist 44b9b26baa VM: nitpick fix of filenames in comments 2016-02-28 01:23:59 +01:00
Björn Lindqvist 2db1e7e6a5 VM: simplifies factor_vm::determine_inline_cache_type 2016-02-28 01:10:12 +01:00
Björn Lindqvist 0c9c0b2f82 VM: removes a few methods related to relocation handling
They are only used once, so it is simpler to "inline" them
2015-12-13 13:56:36 +01:00
Björn Lindqvist 7da72ac77c VM: the compute_vm_address method can be removed 2015-12-13 13:56:36 +01:00
Björn Lindqvist 08766090d3 VM: more fine-grained control over which special objects to save
It removes a few roots that doesn't need to be saved in the image and
can save a few hundred bytes.
2015-12-13 13:56:36 +01:00
Björn Lindqvist 46bfcbf3a2 VM: the rel_type() and rel_offset() accessors in instruction_operand can be removed 2015-12-13 13:56:36 +01:00
Björn Lindqvist 1a72f731e0 VM: now special-objects is used for -1, 0, 1 and t
The fields in the image_header aren't read or written to but I haven't
changed the format yet.
2015-12-10 10:22:38 +01:00
Björn Lindqvist 339b1b6466 VM: put the singletons t, -1, 0 and 1 in the special objects table
Having them there instead of as fields in the vm struct removes a bunch
of special handling. This commit just adds them and doesn't remove the
old ones to avoid potential chicken-and-egg bootstrap problems.
2015-12-09 21:31:13 +01:00
Björn Lindqvist d911bc45fd VM: refactors the prepare_boot_image method
easier to read if the methods compile_all_words and
initialize_all_quotations which are only used once are "inlined"
2015-12-04 13:57:57 +01:00
Björn Lindqvist 867c85f1c5 VM: can't go through the accessor here because it triggers the assert 2015-11-25 18:12:55 +01:00
Björn Lindqvist 0274e889b9 VM: refactor tagged.hpp so it's not dependent on the factor_vm class
this way untag<byte_array>(relocation) can be used in code_blocks.hpp
2015-11-24 16:00:50 +01:00
Björn Lindqvist 22bb0cfecf VM: fixes to use the TAG macro over tagged<object>(obj).type() 2015-11-23 02:27:22 +01:00
Björn Lindqvist a8aaa42882 VM: refactoring to use the TAG macro directly over the tagged struct
eg. TAG(obj) is equivalent to tagged<object>(obj).type()
2015-11-22 23:42:54 +01:00
Björn Lindqvist 575da3e478 VM: fix so that errno is set if MoveFileEx fails, should fix #1490 2015-10-12 12:19:21 +02:00
Björn Lindqvist 7dfb352a7e VM: replaced calls to out_of_memory() with fatal_error()
No need for a special out of memory function -- it's just a kind of
fatal  error. Also make fatal_error() call dump_memory_layout() for
easier debugging.
2015-10-08 20:46:17 +02:00
Björn Lindqvist cb55fcf20f VM: prettier and more detailed output when dumping generations 2015-10-08 16:25:35 +02:00
Doug Coleman 7eec8621aa vm: MoveFileEx returns BOOL which needs help converting to C++ bool. 2015-10-01 17:04:13 +00:00
John Benediktsson bd04290187 vm: fix signature for safe_fopen. 2015-09-30 19:03:39 -07:00
Björn Lindqvist 85784c5265 VM: make save-image throw exception on error (#1090) 2015-09-30 23:31:47 +02:00
Björn Lindqvist 2536b6cd93 VM: fix move_file called from save_image
save_image() shouldn't throw exceptions because if the 'then_die'
argument is t it would leave factor in an inconsistent state. So
therefore move_file() should be fixed and raw_fclose() called instead of
safe_fclose().
2015-09-29 23:13:10 +02:00
Björn Lindqvist 40eb664425 VM: simplified save_image, goto works here! 2015-09-29 23:13:09 +02:00
Björn Lindqvist ffc441ad63 VM: looks like ERROR_C_STRING is never thrown, so it can be removed 2015-09-29 23:12:56 +02:00
Björn Lindqvist 614595bd9a VM: workhorse attribute not used 2015-09-22 08:51:03 +02:00
Björn Lindqvist b3de115e3c VM: remove RT_EXCEPTION_HANDLER reference 2015-09-02 21:54:47 +02:00