system_prims.cpp File Reference

#include "incls/_precompiled.incl"
#include "incls/_system_prims.cpp.incl"

Include dependency graph for system_prims.cpp:

Go to the source code of this file.

Classes

class  InstancesOfClosure
class  ConvertClosure
class  HasReferenceClosure
class  ReferencesToClosure
class  HasInstanceReferenceClosure
class  ReferencesToInstancesOfClosure
class  AllObjectsClosure

Functions

 PRIM_DECL_5 (systemPrimitives::createNamedInvocation, oop mixin, oop name, oop primary, oop superclass, oop format)
 PRIM_DECL_3 (systemPrimitives::createInvocation, oop mixin, oop superclass, oop format)
 PRIM_DECL_1 (systemPrimitives::applyChange, oop change)
 PRIM_DECL_1 (systemPrimitives::scavenge, oop receiver)
 PRIM_DECL_1 (systemPrimitives::garbageGollect, oop receiver)
 PRIM_DECL_0 (systemPrimitives::breakpoint)
 PRIM_DECL_0 (systemPrimitives::halt)
static oop fake_time ()
 PRIM_DECL_0 (systemPrimitives::userTime)
 PRIM_DECL_0 (systemPrimitives::systemTime)
 PRIM_DECL_0 (systemPrimitives::elapsedTime)
 PRIM_DECL_1 (systemPrimitives::writeSnapshot, oop fileName)
 PRIM_DECL_1 (systemPrimitives::globalAssociationKey, oop receiver)
 PRIM_DECL_2 (systemPrimitives::globalAssociationSetKey, oop receiver, oop key)
 PRIM_DECL_1 (systemPrimitives::globalAssociationValue, oop receiver)
 PRIM_DECL_2 (systemPrimitives::globalAssociationSetValue, oop receiver, oop value)
 PRIM_DECL_1 (systemPrimitives::globalAssociationIsConstant, oop receiver)
 PRIM_DECL_2 (systemPrimitives::globalAssociationSetConstant, oop receiver, oop value)
 PRIM_DECL_1 (systemPrimitives::smalltalk_at, oop index)
 PRIM_DECL_2 (systemPrimitives::smalltalk_at_put, oop key, oop value)
 PRIM_DECL_1 (systemPrimitives::smalltalk_remove_at, oop index)
 PRIM_DECL_0 (systemPrimitives::smalltalk_size)
 PRIM_DECL_0 (systemPrimitives::smalltalk_array)
 PRIM_DECL_0 (systemPrimitives::quit)
 PRIM_DECL_0 (systemPrimitives::printPrimitiveTable)
 PRIM_DECL_0 (systemPrimitives::print_memory)
 PRIM_DECL_0 (systemPrimitives::print_zone)
 PRIM_DECL_1 (systemPrimitives::defWindowProc, oop resultProxy)
 PRIM_DECL_1 (systemPrimitives::windowsHInstance, oop resultProxy)
 PRIM_DECL_1 (systemPrimitives::windowsHPrevInstance, oop resultProxy)
 PRIM_DECL_0 (systemPrimitives::windowsNCmdShow)
 PRIM_DECL_1 (systemPrimitives::characterFor, oop value)
 PRIM_DECL_0 (systemPrimitives::traceStack)
 PRIM_DECL_0 (systemPrimitives::flat_profiler_reset)
 PRIM_DECL_0 (systemPrimitives::flat_profiler_process)
 PRIM_DECL_1 (systemPrimitives::flat_profiler_engage, oop process)
 PRIM_DECL_0 (systemPrimitives::flat_profiler_disengage)
 PRIM_DECL_0 (systemPrimitives::flat_profiler_print)
 PRIM_DECL_0 (systemPrimitives::notificationQueueGet)
 PRIM_DECL_1 (systemPrimitives::notificationQueuePut, oop value)
 PRIM_DECL_1 (systemPrimitives::hadNearDeathExperience, oop value)
 PRIM_DECL_2 (systemPrimitives::dll_setup, oop receiver, oop selector)
 PRIM_DECL_3 (systemPrimitives::dll_lookup, oop name, oop library, oop result)
 PRIM_DECL_2 (systemPrimitives::dll_load, oop name, oop library)
 PRIM_DECL_1 (systemPrimitives::dll_unload, oop library)
 PRIM_DECL_0 (systemPrimitives::inlining_database_directory)
 PRIM_DECL_1 (systemPrimitives::inlining_database_set_directory, oop name)
 PRIM_DECL_1 (systemPrimitives::inlining_database_file_out_class, oop receiver_class)
 PRIM_DECL_0 (systemPrimitives::inlining_database_file_out_all)
 PRIM_DECL_1 (systemPrimitives::inlining_database_compile, oop file_name)
 PRIM_DECL_0 (systemPrimitives::inlining_database_compile_next)
 PRIM_DECL_1 (systemPrimitives::inlining_database_mangle, oop name)
 PRIM_DECL_1 (systemPrimitives::inlining_database_demangle, oop name)
 PRIM_DECL_2 (systemPrimitives::inlining_database_add_entry, oop receiver_class, oop method_selector)
 PRIM_DECL_0 (systemPrimitives::sliding_system_average)
 PRIM_DECL_2 (systemPrimitives::instances_of, oop klass, oop limit)
 PRIM_DECL_2 (systemPrimitives::references_to, oop obj, oop limit)
 PRIM_DECL_2 (systemPrimitives::references_to_instances_of, oop klass, oop limit)
 PRIM_DECL_1 (systemPrimitives::all_objects, oop limit)
 PRIM_DECL_0 (systemPrimitives::flush_code_cache)
 PRIM_DECL_0 (systemPrimitives::flush_dead_code)


Function Documentation

static oop fake_time (  )  [static]

Definition at line 152 of file system_prims.cpp.

References oopFactory::new_double().

Referenced by PRIM_DECL_0().

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::flush_dead_code   ) 

Definition at line 874 of file system_prims.cpp.

References PROLOGUE_0, and trueObj.

PRIM_DECL_0 ( systemPrimitives::flush_code_cache   ) 

Definition at line 868 of file system_prims.cpp.

References PROLOGUE_0, and trueObj.

PRIM_DECL_0 ( systemPrimitives::sliding_system_average   ) 

Definition at line 637 of file system_prims.cpp.

References as_smiOop(), markSymbol(), oopFactory::new_objArray(), SlidingSystemAverage::number_of_cases, objArrayOopDesc::obj_at_put(), PROLOGUE_0, and SlidingSystemAverage::update().

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::inlining_database_compile_next   ) 

Definition at line 567 of file system_prims.cpp.

References VMProcess::execute(), falseObj, outputStream::print(), outputStream::print_cr(), PROLOGUE_0, InliningDatabase::select_and_remove(), std, and trueObj.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::inlining_database_file_out_all   ) 

Definition at line 519 of file system_prims.cpp.

References as_smiOop(), InliningDatabase::file_out_all(), and PROLOGUE_0.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::inlining_database_directory   ) 

Definition at line 484 of file system_prims.cpp.

References InliningDatabase::directory(), oopFactory::new_symbol(), and PROLOGUE_0.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::notificationQueueGet   ) 

Definition at line 398 of file system_prims.cpp.

References NotificationQueue::get(), NotificationQueue::is_empty(), markSymbol(), and PROLOGUE_0.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::flat_profiler_print   ) 

Definition at line 392 of file system_prims.cpp.

References FlatProfiler::print(), PROLOGUE_0, and trueObj.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::flat_profiler_disengage   ) 

Definition at line 386 of file system_prims.cpp.

References FlatProfiler::disengage(), nilObj, DeltaProcess::processObj(), and PROLOGUE_0.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::flat_profiler_process   ) 

Definition at line 369 of file system_prims.cpp.

References nilObj, FlatProfiler::process(), DeltaProcess::processObj(), and PROLOGUE_0.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::flat_profiler_reset   ) 

Definition at line 363 of file system_prims.cpp.

References PROLOGUE_0, FlatProfiler::reset(), and trueObj.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::traceStack   ) 

Definition at line 355 of file system_prims.cpp.

References DeltaProcess::active(), PROLOGUE_0, DeltaProcess::trace_stack(), and trueObj.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::windowsNCmdShow   ) 

Definition at line 337 of file system_prims.cpp.

References as_smiOop(), os::get_nCmdShow(), and PROLOGUE_0.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::print_zone   ) 

Definition at line 305 of file system_prims.cpp.

References PROLOGUE_0, and trueObj.

PRIM_DECL_0 ( systemPrimitives::print_memory   ) 

Definition at line 299 of file system_prims.cpp.

References Universe::print(), PROLOGUE_0, and trueObj.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::printPrimitiveTable   ) 

Definition at line 293 of file system_prims.cpp.

References primitives::print_table(), PROLOGUE_0, and trueObj.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::quit   ) 

Definition at line 287 of file system_prims.cpp.

References badOop, and PROLOGUE_0.

PRIM_DECL_0 ( systemPrimitives::smalltalk_array   ) 

Definition at line 282 of file system_prims.cpp.

References PROLOGUE_0, and Universe::systemDictionaryObj().

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::smalltalk_size   ) 

Definition at line 277 of file system_prims.cpp.

References as_smiOop(), PROLOGUE_0, and Universe::systemDictionaryObj().

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::elapsedTime   ) 

Definition at line 177 of file system_prims.cpp.

References os::elapsedTime(), fake_time(), oopFactory::new_double(), and PROLOGUE_0.

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::systemTime   ) 

Definition at line 167 of file system_prims.cpp.

References fake_time(), oopFactory::new_double(), PROLOGUE_0, os::systemTime(), and os::updateTimes().

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::userTime   ) 

Definition at line 157 of file system_prims.cpp.

References fake_time(), oopFactory::new_double(), PROLOGUE_0, os::updateTimes(), and os::userTime().

Here is the call graph for this function:

PRIM_DECL_0 ( systemPrimitives::halt   ) 

Definition at line 146 of file system_prims.cpp.

References PROLOGUE_0, and trueObj.

PRIM_DECL_0 ( systemPrimitives::breakpoint   ) 

Definition at line 137 of file system_prims.cpp.

References dispatchTable::intercept_for_step(), PROLOGUE_0, and trueObj.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::all_objects  ,
oop  limit 
)

Definition at line 847 of file system_prims.cpp.

References oopDesc::is_smi(), markSymbol(), oopFactory::new_objArray(), objArrayOopDesc::obj_at_put(), Universe::object_iterate(), PROLOGUE_1, and AllObjectsClosure::result.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::inlining_database_demangle  ,
oop  name 
)

Definition at line 605 of file system_prims.cpp.

References doubleByteArrayOopDesc::copy_null_terminated(), byteArrayOopDesc::copy_null_terminated(), oopDesc::is_byteArray(), oopDesc::is_doubleByteArray(), doubleByteArrayOopDesc::length(), byteArrayOopDesc::length(), markSymbol(), oopFactory::new_byteArray(), NEW_RESOURCE_ARRAY, PROLOGUE_1, and InliningDatabase::unmangle_name().

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::inlining_database_mangle  ,
oop  name 
)

Definition at line 587 of file system_prims.cpp.

References doubleByteArrayOopDesc::copy_null_terminated(), byteArrayOopDesc::copy_null_terminated(), oopDesc::is_byteArray(), oopDesc::is_doubleByteArray(), doubleByteArrayOopDesc::length(), byteArrayOopDesc::length(), InliningDatabase::mangle_name(), markSymbol(), oopFactory::new_byteArray(), NEW_RESOURCE_ARRAY, and PROLOGUE_1.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::inlining_database_compile  ,
oop  file_name 
)

Definition at line 526 of file system_prims.cpp.

References doubleByteArrayOopDesc::copy_null_terminated(), byteArrayOopDesc::copy_null_terminated(), VMProcess::execute(), InliningDatabase::file_in(), oopDesc::is_byteArray(), oopDesc::is_doubleByteArray(), doubleByteArrayOopDesc::length(), byteArrayOopDesc::length(), markSymbol(), NEW_RESOURCE_ARRAY, outputStream::print_cr(), PROLOGUE_1, std, and trueObj.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::inlining_database_file_out_class  ,
oop  receiver_class 
)

Definition at line 508 of file system_prims.cpp.

References as_smiOop(), InliningDatabase::file_out(), oopDesc::is_klass(), markSymbol(), and PROLOGUE_1.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::inlining_database_set_directory  ,
oop  name 
)

Definition at line 489 of file system_prims.cpp.

References doubleByteArrayOopDesc::copy_null_terminated(), byteArrayOopDesc::copy_null_terminated(), oopDesc::is_byteArray(), oopDesc::is_doubleByteArray(), doubleByteArrayOopDesc::length(), byteArrayOopDesc::length(), markSymbol(), NEW_C_HEAP_ARRAY, PROLOGUE_1, InliningDatabase::set_directory(), and trueObj.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::dll_unload  ,
oop  library 
)

Definition at line 471 of file system_prims.cpp.

References oopDesc::is_proxy(), markSymbol(), PROLOGUE_1, and DLLs::unload().

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::hadNearDeathExperience  ,
oop  value 
)

Definition at line 412 of file system_prims.cpp.

References falseObj, oopDesc::is_mem(), markOopDesc::is_near_death(), memOopDesc::mark(), PROLOGUE_1, and trueObj.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::notificationQueuePut  ,
oop  value 
)

Definition at line 406 of file system_prims.cpp.

References PROLOGUE_1, and NotificationQueue::put().

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::flat_profiler_engage  ,
oop  process 
)

Definition at line 375 of file system_prims.cpp.

References FlatProfiler::engage(), oopDesc::is_process(), markSymbol(), and PROLOGUE_1.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::characterFor  ,
oop  value 
)

Definition at line 342 of file system_prims.cpp.

References Universe::asciiCharacters(), oopDesc::is_smi(), markSymbol(), objArrayOopDesc::obj_at(), and PROLOGUE_1.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::windowsHPrevInstance  ,
oop  resultProxy 
)

Definition at line 329 of file system_prims.cpp.

References os::get_prevInstance(), oopDesc::is_proxy(), markSymbol(), PROLOGUE_1, and proxyOopDesc::set_pointer().

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::windowsHInstance  ,
oop  resultProxy 
)

Definition at line 321 of file system_prims.cpp.

References os::get_hInstance(), oopDesc::is_proxy(), markSymbol(), PROLOGUE_1, and proxyOopDesc::set_pointer().

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::defWindowProc  ,
oop  resultProxy 
)

Definition at line 311 of file system_prims.cpp.

References oopDesc::is_proxy(), DLLs::lookup(), markSymbol(), oopFactory::new_symbol(), outputStream::print_cr(), PROLOGUE_1, proxyOopDesc::set_pointer(), and std.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::smalltalk_remove_at  ,
oop  index 
)

Definition at line 261 of file system_prims.cpp.

References oopDesc::is_smi(), markSymbol(), PROLOGUE_1, Universe::remove_global_at(), and Universe::systemDictionaryObj().

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::smalltalk_at  ,
oop  index 
)

Definition at line 241 of file system_prims.cpp.

References oopDesc::is_smi(), markSymbol(), objArrayOopDesc::obj_at(), PROLOGUE_1, and Universe::systemDictionaryObj().

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::globalAssociationIsConstant  ,
oop  receiver 
)

Definition at line 223 of file system_prims.cpp.

References assert, falseObj, oopDesc::is_association(), associationOopDesc::is_constant(), PROLOGUE_1, and trueObj.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::globalAssociationValue  ,
oop  receiver 
)

Definition at line 210 of file system_prims.cpp.

References assert, oopDesc::is_association(), PROLOGUE_1, and associationOopDesc::value().

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::globalAssociationKey  ,
oop  receiver 
)

Definition at line 195 of file system_prims.cpp.

References assert, oopDesc::is_association(), associationOopDesc::key(), and PROLOGUE_1.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::writeSnapshot  ,
oop  fileName 
)

Definition at line 186 of file system_prims.cpp.

References SnapshotDesc::error_symbol(), SnapshotDesc::has_error(), markSymbol(), PROLOGUE_1, and SnapshotDesc::write_on().

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::garbageGollect  ,
oop  receiver 
)

Definition at line 128 of file system_prims.cpp.

References VMProcess::execute(), and PROLOGUE_1.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::scavenge  ,
oop  receiver 
)

Definition at line 119 of file system_prims.cpp.

References VMProcess::execute(), and PROLOGUE_1.

Here is the call graph for this function:

PRIM_DECL_1 ( systemPrimitives::applyChange  ,
oop  change 
)

Definition at line 108 of file system_prims.cpp.

References Reflection::apply_change(), oopDesc::is_objArray(), markSymbol(), and PROLOGUE_1.

Here is the call graph for this function:

PRIM_DECL_2 ( systemPrimitives::references_to_instances_of  ,
oop  klass,
oop  limit 
)

Definition at line 807 of file system_prims.cpp.

References oopDesc::is_klass(), oopDesc::is_smi(), markSymbol(), oopFactory::new_objArray(), objArrayOopDesc::obj_at_put(), Universe::object_iterate(), PROLOGUE_2, and ReferencesToInstancesOfClosure::result.

Here is the call graph for this function:

PRIM_DECL_2 ( systemPrimitives::references_to  ,
oop  obj,
oop  limit 
)

Definition at line 746 of file system_prims.cpp.

References oopDesc::is_smi(), markSymbol(), oopFactory::new_objArray(), objArrayOopDesc::obj_at_put(), Universe::object_iterate(), PROLOGUE_2, and ReferencesToClosure::result.

Here is the call graph for this function:

PRIM_DECL_2 ( systemPrimitives::instances_of  ,
oop  klass,
oop  limit 
)

Definition at line 677 of file system_prims.cpp.

References oopDesc::is_klass(), oopDesc::is_smi(), markSymbol(), oopFactory::new_objArray(), objArrayOopDesc::obj_at_put(), Universe::object_iterate(), PROLOGUE_2, and InstancesOfClosure::result.

Here is the call graph for this function:

PRIM_DECL_2 ( systemPrimitives::inlining_database_add_entry  ,
oop  receiver_class,
oop  method_selector 
)

Definition at line 621 of file system_prims.cpp.

References InliningDatabase::add_lookup_entry(), oopDesc::is_klass(), oopDesc::is_symbol(), markSymbol(), and PROLOGUE_2.

Here is the call graph for this function:

PRIM_DECL_2 ( systemPrimitives::dll_load  ,
oop  name,
oop  library 
)

Definition at line 453 of file system_prims.cpp.

References oopDesc::is_proxy(), oopDesc::is_symbol(), DLLs::load(), markSymbol(), PROLOGUE_2, and proxyOopDesc::set_pointer().

Here is the call graph for this function:

PRIM_DECL_2 ( systemPrimitives::dll_setup  ,
oop  receiver,
oop  selector 
)

Definition at line 419 of file system_prims.cpp.

References oopDesc::is_symbol(), markSymbol(), PROLOGUE_2, and Universe::set_dll_lookup().

Here is the call graph for this function:

PRIM_DECL_2 ( systemPrimitives::smalltalk_at_put  ,
oop  key,
oop  value 
)

Definition at line 252 of file system_prims.cpp.

References Universe::add_global(), oopFactory::new_association(), and PROLOGUE_2.

Here is the call graph for this function:

PRIM_DECL_2 ( systemPrimitives::globalAssociationSetConstant  ,
oop  receiver,
oop  value 
)

Definition at line 229 of file system_prims.cpp.

References assert, falseObj, oopDesc::is_association(), associationOopDesc::is_constant(), markSymbol(), PROLOGUE_2, associationOopDesc::set_is_constant(), and trueObj.

Here is the call graph for this function:

PRIM_DECL_2 ( systemPrimitives::globalAssociationSetValue  ,
oop  receiver,
oop  value 
)

Definition at line 216 of file system_prims.cpp.

References assert, oopDesc::is_association(), PROLOGUE_2, and associationOopDesc::set_value().

Here is the call graph for this function:

PRIM_DECL_2 ( systemPrimitives::globalAssociationSetKey  ,
oop  receiver,
oop  key 
)

Definition at line 201 of file system_prims.cpp.

References assert, oopDesc::is_association(), oopDesc::is_symbol(), markSymbol(), PROLOGUE_2, and associationOopDesc::set_key().

Here is the call graph for this function:

PRIM_DECL_3 ( systemPrimitives::dll_lookup  ,
oop  name,
oop  library,
oop  result 
)

Definition at line 432 of file system_prims.cpp.

References oopDesc::is_proxy(), oopDesc::is_symbol(), DLLs::lookup(), markSymbol(), PROLOGUE_3, and proxyOopDesc::set_pointer().

Here is the call graph for this function:

PRIM_DECL_3 ( systemPrimitives::createInvocation  ,
oop  mixin,
oop  superclass,
oop  format 
)

Definition at line 77 of file system_prims.cpp.

References mixinOopDesc::class_mixin(), Klass::create_subclass(), Klass::format_from_symbol(), oopDesc::is_klass(), oopDesc::is_mixin(), oopDesc::is_symbol(), klassOopDesc::klass_part(), markSymbol(), Klass::no_klass, PROLOGUE_3, mixinOopDesc::set_installed(), and trueObj.

Here is the call graph for this function:

PRIM_DECL_5 ( systemPrimitives::createNamedInvocation  ,
oop  mixin,
oop  name,
oop  primary,
oop  superclass,
oop  format 
)

Definition at line 32 of file system_prims.cpp.

References Universe::add_global(), mixinOopDesc::class_mixin(), Klass::create_subclass(), falseObj, Klass::format_from_symbol(), oopDesc::klass(), klassOopDesc::klass_part(), markSymbol(), oopFactory::new_association(), Klass::no_klass, PROLOGUE_5, mixinOopDesc::set_installed(), mixinOopDesc::set_primary_invocation(), and trueObj.

Here is the call graph for this function:


Generated on Mon Oct 9 13:46:19 2006 for Strongtalk VM by  doxygen 1.4.7