Code

History

Commits on master to src/include/runtime.h32
  1. Move some basic offset functions to header files for inlining ease Replace enum_pointer_field functions with custom implementations - GC now has custom implementation - other implementations use template<> version Fix misuse of shared_ptr<type_descriptor_t> in various built-in types Observed 5 - 8 % improvement in GC for compiler scenario.arr committed 9 years agocd2748b
  2. Remove vm_thread reference from exec/fork vm functions.arr committed 9 years agoa64d775
  3. Remove 'using namespace' statements from all but the execution table file.arr committed 9 years ago2519a93
  4. Expose a mechanism for the GC to supply memory allocators instead of static linking them in.arr committed 9 years ago6ec8bed
  5. Alter debugger API to accept vector value not reference.arr committed 9 years agocc8f2b6
  6. Address more bugs found during limbo compiler testingarr committed 9 years ago84ac331
  7. DisVM will now only use 0 initialized memory. - The alloc_memory function will only return 0 initialize memory - calloc_memory was removedarr committed 9 years agob92328e
  8. Add type_descriptor::is_equal() function. - Replace pointer and use function throughout VM Complete implementation of vm_array_t::copy_from() which supports the slicela instruction.arr committed 9 years ago7838bae
  9. Add support for traps in VM Add instruction trap to enable single step scenario in debugger Remote get_state() function from threadarr committed 9 years agocb408a1
  10. Update registers struct to include next_pc member. This allows the pc member to always point at the current PC instead of having been incremented to the 'next' PC.arr committed 9 years agoa46f30c
  11. Create configuration struct for VM Add syscall failure exception - Create VM syscall failure message functions Respect the 'r' format verb Create module resolver interface Implement default module resolver interface Implement Sys.fildes() functionarr committed 9 years ago232a659
  12. Fix race condition between scheduler and debugger during all thread suspension.arr committed 9 years agobd141a7
  13. Enable logging from exec for specific components. Remove trailing newlines from all existing logging calls.arr committed 9 years agodd0789c
  14. Ensure a C++ object exists for all static const members of structs or create constexpr functions. - This is an attempt to adhere to the letter of the C++ specification.arr committed 9 years agoaf5c7a9
  15. Added vm_id to vm_module_t that is used by the VM to uniquely identify a module Updated tool dispatcher to pass on the loaded_vm_module_t type as the module_vm_load event argument Debugger now uses symbol data to resolve stack IPsarr committed 9 years ago72f24ec
  16. Change assert to exception if a dis module contains an invalid magic number. Broken threads now terminate the VM using the default scheduler. Tools can not get a callback for broken threads.arr committed 10 years ago096b0c7
  17. Reduce assembly footprint of execute function to allow for specialized tool dispatcher logic Fix locking strategy in scheduler - Release lock prior to notify Change default build optimization to 'for speed' rather than 'full' Add current thread quanta to register and specify size for thread state enum No longer free tool dispatcher after all tools have detachedarr committed 10 years ago8142339
  18. Alter register address decoding using a lookup table instead of single function with multiple switch blocks. Reduced scheduler sleep time during tool dispatch setting.arr committed 10 years ago824a71a
  19. Debugger supports breakpoints (set/clear/list) Clean up usage of final and override on various classes Distinguish tool events for vm loading module and thread loading modulearr committed 10 years agoe2f8e25
  20. Address various performance issues discovered while profiling debugger Fix logical errors in bit shifting bytecodes Add assert for bit shifting issues that may arise on other compilers Fix bug in vm_array assertarr committed 10 years agod8c9a33
  21. Addition of examine memory command to debugger. Re-design debugger command processing.arr committed 10 years agof277167
  22. Create disvm-asm static lib (Used for working with bytecode) - Convert functions for opcode <--> string Factor out common GYP settingsarr committed 10 years ago8f29618
  23. Basic debugger implementation - No way to enable it without altering exec main.cpp.arr committed 10 years agof2c6ef3
  24. Various work for tool support in the VM. Update some type names (i.e. _t) and alter API signatures to be more consistent.arr committed 10 years agoe5d3f86
  25. Name the entry module in the exec program. Re-write stack walking function for debugger. System exceptions now print out call stack.arr committed 10 years ago794ecfc
  26. Create specific exception when index is out of range. Update thread class to print out exception details. Throw exception when an invalid op-code is detected. Enforce mspawn instruction cannot start from a built-in module.arr committed 10 years ago266fad6
  27. Add a garbage collector that does nothing.arr committed 10 years agoa9ef311
  28. Implemented basic native shell - takes compiled Command modules Defined shell Command module - should be implemented to pass modules to native shell Updated intrinsic type descriptors so they are not allocated on VM loadarr committed 10 years ago330522f
  29. Code clean-up Optimization in allocation pointer enumeration. - Removed needless division - Marked bitset<> as const, now indexing is a constexpr.arr committed 10 years ago8506dc6
  30. Basic implementation of Sys module functions - Sys.create, Sys.open, Sys.read, Sys.write - Sys.tokenizearr committed 10 years ago992a33f
  31. Altered API getting the allocation from a vm_alloc_t. Added preliminary internal file descriptor type. Test groups now print out their name.arr committed 10 years ago5a417ba
  32. Initial public commit for Dis VMarr committed 10 years agof95902e