proxy_prims.cpp File Reference

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

Include dependency graph for proxy_prims.cpp:

Go to the source code of this file.

Defines

#define ASSERT_RECEIVER   assert(receiver->is_proxy(), "receiver must be proxy")

Typedefs

typedef void *(__stdcall *) call_out_func_0 ()
typedef void *(__stdcall *) call_out_func_1 (int a)
typedef void *(__stdcall *) call_out_func_2 (int a, int b)
typedef void *(__stdcall *) call_out_func_3 (int a, int b, int c)
typedef void *(__stdcall *) call_out_func_4 (int a, int b, int c, int d)
typedef void *(__stdcall *) call_out_func_5 (int a, int b, int c, int d, int e)

Functions

 PRIM_DECL_1 (proxyOopPrimitives::getSmi, oop receiver)
 PRIM_DECL_2 (proxyOopPrimitives::set, oop receiver, oop value)
 PRIM_DECL_3 (proxyOopPrimitives::setHighLow, oop receiver, oop high, oop low)
 PRIM_DECL_1 (proxyOopPrimitives::getHigh, oop receiver)
 PRIM_DECL_1 (proxyOopPrimitives::getLow, oop receiver)
 PRIM_DECL_1 (proxyOopPrimitives::isNull, oop receiver)
 PRIM_DECL_1 (proxyOopPrimitives::isAllOnes, oop receiver)
 PRIM_DECL_2 (proxyOopPrimitives::malloc, oop receiver, oop size)
 PRIM_DECL_2 (proxyOopPrimitives::calloc, oop receiver, oop size)
 PRIM_DECL_1 (proxyOopPrimitives::free, oop receiver)
 PRIM_DECL_2 (proxyOopPrimitives::byteAt, oop receiver, oop offset)
 PRIM_DECL_2 (proxyOopPrimitives::doubleByteAt, oop receiver, oop offset)
 PRIM_DECL_3 (proxyOopPrimitives::doubleByteAtPut, oop receiver, oop offset, oop value)
 PRIM_DECL_2 (proxyOopPrimitives::smiAt, oop receiver, oop offset)
 PRIM_DECL_3 (proxyOopPrimitives::smiAtPut, oop receiver, oop offset, oop value)
 PRIM_DECL_3 (proxyOopPrimitives::subProxyAt, oop receiver, oop offset, oop result)
 PRIM_DECL_3 (proxyOopPrimitives::proxyAt, oop receiver, oop offset, oop result)
 PRIM_DECL_3 (proxyOopPrimitives::proxyAtPut, oop receiver, oop offset, oop value)
 PRIM_DECL_2 (proxyOopPrimitives::singlePrecisionFloatAt, oop receiver, oop offset)
 PRIM_DECL_3 (proxyOopPrimitives::singlePrecisionFloatAtPut, oop receiver, oop offset, oop value)
 PRIM_DECL_2 (proxyOopPrimitives::doublePrecisionFloatAt, oop receiver, oop offset)
 PRIM_DECL_3 (proxyOopPrimitives::doublePrecisionFloatAtPut, oop receiver, oop offset, oop value)
static bool convert_to_arg (oop arg, int *addr)
 PRIM_DECL_2 (proxyOopPrimitives::callOut0, oop receiver, oop result)
 PRIM_DECL_3 (proxyOopPrimitives::callOut1, oop receiver, oop arg1, oop result)
 PRIM_DECL_4 (proxyOopPrimitives::callOut2, oop receiver, oop arg1, oop arg2, oop result)
 PRIM_DECL_5 (proxyOopPrimitives::callOut3, oop receiver, oop arg1, oop arg2, oop arg3, oop result)
 PRIM_DECL_6 (proxyOopPrimitives::callOut4, oop receiver, oop arg1, oop arg2, oop arg3, oop arg4, oop result)
 PRIM_DECL_7 (proxyOopPrimitives::callOut5, oop receiver, oop arg1, oop arg2, oop arg3, oop arg4, oop arg5, oop result)
 PRIM_DECL_3 (proxyOopPrimitives::byteAtPut, oop receiver, oop offset, oop value)


Define Documentation

#define ASSERT_RECEIVER   assert(receiver->is_proxy(), "receiver must be proxy")

Definition at line 31 of file proxy_prims.cpp.


Typedef Documentation

typedef void*(__stdcall *) call_out_func_0()

Definition at line 254 of file proxy_prims.cpp.

typedef void*(__stdcall *) call_out_func_1(int a)

Definition at line 266 of file proxy_prims.cpp.

typedef void*(__stdcall *) call_out_func_2(int a, int b)

Definition at line 283 of file proxy_prims.cpp.

typedef void*(__stdcall *) call_out_func_3(int a, int b, int c)

Definition at line 304 of file proxy_prims.cpp.

typedef void*(__stdcall *) call_out_func_4(int a, int b, int c, int d)

Definition at line 329 of file proxy_prims.cpp.

typedef void*(__stdcall *) call_out_func_5(int a, int b, int c, int d, int e)

Definition at line 358 of file proxy_prims.cpp.


Function Documentation

static bool convert_to_arg ( oop  arg,
int *  addr 
) [static]

Definition at line 242 of file proxy_prims.cpp.

References proxyOopDesc::get_pointer(), oopDesc::is_proxy(), oopDesc::is_smi(), and smiOopDesc::value().

Referenced by PRIM_DECL_3(), PRIM_DECL_4(), PRIM_DECL_5(), PRIM_DECL_6(), and PRIM_DECL_7().

Here is the call graph for this function:

PRIM_DECL_1 ( proxyOopPrimitives::free  ,
oop  receiver 
)

Definition at line 113 of file proxy_prims.cpp.

References ASSERT_RECEIVER, proxyOopDesc::get_pointer(), proxyOopDesc::null_pointer(), and PROLOGUE_1.

Here is the call graph for this function:

PRIM_DECL_1 ( proxyOopPrimitives::isAllOnes  ,
oop  receiver 
)

Definition at line 91 of file proxy_prims.cpp.

References ASSERT_RECEIVER, falseObj, proxyOopDesc::is_allOnes(), PROLOGUE_1, and trueObj.

Here is the call graph for this function:

PRIM_DECL_1 ( proxyOopPrimitives::isNull  ,
oop  receiver 
)

Definition at line 85 of file proxy_prims.cpp.

References ASSERT_RECEIVER, falseObj, proxyOopDesc::is_null(), PROLOGUE_1, and trueObj.

Here is the call graph for this function:

PRIM_DECL_1 ( proxyOopPrimitives::getLow  ,
oop  receiver 
)

Definition at line 77 of file proxy_prims.cpp.

References as_smiOop(), ASSERT_RECEIVER, proxyOopDesc::get_pointer(), and PROLOGUE_1.

Here is the call graph for this function:

PRIM_DECL_1 ( proxyOopPrimitives::getHigh  ,
oop  receiver 
)

Definition at line 69 of file proxy_prims.cpp.

References as_smiOop(), ASSERT_RECEIVER, proxyOopDesc::get_pointer(), and PROLOGUE_1.

Here is the call graph for this function:

PRIM_DECL_1 ( proxyOopPrimitives::getSmi  ,
oop  receiver 
)

Definition at line 33 of file proxy_prims.cpp.

References as_smiOop(), ASSERT_RECEIVER, BitsPerWord, proxyOopDesc::get_pointer(), markSymbol(), PROLOGUE_1, and Tag_Size.

Here is the call graph for this function:

PRIM_DECL_2 ( proxyOopPrimitives::callOut0  ,
oop  receiver,
oop  result 
)

Definition at line 255 of file proxy_prims.cpp.

References ASSERT_RECEIVER, proxyOopDesc::get_pointer(), oopDesc::is_proxy(), markSymbol(), PROLOGUE_2, and proxyOopDesc::set_pointer().

Here is the call graph for this function:

PRIM_DECL_2 ( proxyOopPrimitives::doublePrecisionFloatAt  ,
oop  receiver,
oop  offset 
)

Definition at line 223 of file proxy_prims.cpp.

References ASSERT_RECEIVER, oopDesc::is_smi(), markSymbol(), oopFactory::new_double(), and PROLOGUE_2.

Here is the call graph for this function:

PRIM_DECL_2 ( proxyOopPrimitives::singlePrecisionFloatAt  ,
oop  receiver,
oop  offset 
)

Definition at line 204 of file proxy_prims.cpp.

References ASSERT_RECEIVER, oopDesc::is_smi(), markSymbol(), oopFactory::new_double(), and PROLOGUE_2.

Here is the call graph for this function:

PRIM_DECL_2 ( proxyOopPrimitives::smiAt  ,
oop  receiver,
oop  offset 
)

Definition at line 148 of file proxy_prims.cpp.

References as_smiOop(), ASSERT_RECEIVER, BitsPerWord, oopDesc::is_smi(), proxyOopDesc::long_at(), markSymbol(), PROLOGUE_2, and Tag_Size.

Here is the call graph for this function:

PRIM_DECL_2 ( proxyOopPrimitives::doubleByteAt  ,
oop  receiver,
oop  offset 
)

Definition at line 130 of file proxy_prims.cpp.

References as_smiOop(), ASSERT_RECEIVER, oopDesc::is_smi(), markSymbol(), and PROLOGUE_2.

Here is the call graph for this function:

PRIM_DECL_2 ( proxyOopPrimitives::byteAt  ,
oop  receiver,
oop  offset 
)

Definition at line 122 of file proxy_prims.cpp.

References as_smiOop(), ASSERT_RECEIVER, oopDesc::is_smi(), markSymbol(), and PROLOGUE_2.

Here is the call graph for this function:

PRIM_DECL_2 ( proxyOopPrimitives::calloc  ,
oop  receiver,
oop  size 
)

Definition at line 105 of file proxy_prims.cpp.

References ASSERT_RECEIVER, markSymbol(), PROLOGUE_2, proxyOopDesc::set_pointer(), and Klass::size().

Here is the call graph for this function:

PRIM_DECL_2 ( proxyOopPrimitives::malloc  ,
oop  receiver,
oop  size 
)

Definition at line 97 of file proxy_prims.cpp.

References ASSERT_RECEIVER, markSymbol(), PROLOGUE_2, proxyOopDesc::set_pointer(), and Klass::size().

Here is the call graph for this function:

PRIM_DECL_2 ( proxyOopPrimitives::set  ,
oop  receiver,
oop  value 
)

Definition at line 43 of file proxy_prims.cpp.

References ASSERT_RECEIVER, oopDesc::is_proxy(), oopDesc::is_smi(), markSymbol(), PROLOGUE_2, and proxyOopDesc::set_pointer().

Here is the call graph for this function:

PRIM_DECL_3 ( proxyOopPrimitives::byteAtPut  ,
oop  receiver,
oop  offset,
oop  value 
)

Definition at line 393 of file proxy_prims.cpp.

References ASSERT_RECEIVER, proxyOopDesc::byte_at_put(), oopDesc::is_smi(), markSymbol(), and PROLOGUE_3.

Here is the call graph for this function:

PRIM_DECL_3 ( proxyOopPrimitives::callOut1  ,
oop  receiver,
oop  arg1,
oop  result 
)

Definition at line 267 of file proxy_prims.cpp.

References ASSERT_RECEIVER, convert_to_arg(), proxyOopDesc::get_pointer(), oopDesc::is_proxy(), markSymbol(), PROLOGUE_3, and proxyOopDesc::set_pointer().

Here is the call graph for this function:

PRIM_DECL_3 ( proxyOopPrimitives::doublePrecisionFloatAtPut  ,
oop  receiver,
oop  offset,
oop  value 
)

Definition at line 231 of file proxy_prims.cpp.

References ASSERT_RECEIVER, proxyOopDesc::double_at_put(), oopDesc::is_double(), oopDesc::is_smi(), markSymbol(), and PROLOGUE_3.

Here is the call graph for this function:

PRIM_DECL_3 ( proxyOopPrimitives::singlePrecisionFloatAtPut  ,
oop  receiver,
oop  offset,
oop  value 
)

Definition at line 212 of file proxy_prims.cpp.

References ASSERT_RECEIVER, proxyOopDesc::float_at_put(), oopDesc::is_double(), oopDesc::is_smi(), markSymbol(), and PROLOGUE_3.

Here is the call graph for this function:

PRIM_DECL_3 ( proxyOopPrimitives::proxyAtPut  ,
oop  receiver,
oop  offset,
oop  value 
)

Definition at line 193 of file proxy_prims.cpp.

References ASSERT_RECEIVER, oopDesc::is_proxy(), oopDesc::is_smi(), proxyOopDesc::long_at_put(), markSymbol(), and PROLOGUE_3.

Here is the call graph for this function:

PRIM_DECL_3 ( proxyOopPrimitives::proxyAt  ,
oop  receiver,
oop  offset,
oop  result 
)

Definition at line 182 of file proxy_prims.cpp.

References ASSERT_RECEIVER, oopDesc::is_proxy(), oopDesc::is_smi(), markSymbol(), PROLOGUE_3, and proxyOopDesc::set_pointer().

Here is the call graph for this function:

PRIM_DECL_3 ( proxyOopPrimitives::subProxyAt  ,
oop  receiver,
oop  offset,
oop  result 
)

Definition at line 171 of file proxy_prims.cpp.

References ASSERT_RECEIVER, oopDesc::is_proxy(), oopDesc::is_smi(), markSymbol(), PROLOGUE_3, and proxyOopDesc::set_pointer().

Here is the call graph for this function:

PRIM_DECL_3 ( proxyOopPrimitives::smiAtPut  ,
oop  receiver,
oop  offset,
oop  value 
)

Definition at line 160 of file proxy_prims.cpp.

References ASSERT_RECEIVER, oopDesc::is_smi(), proxyOopDesc::long_at_put(), markSymbol(), and PROLOGUE_3.

Here is the call graph for this function:

PRIM_DECL_3 ( proxyOopPrimitives::doubleByteAtPut  ,
oop  receiver,
oop  offset,
oop  value 
)

Definition at line 138 of file proxy_prims.cpp.

References ASSERT_RECEIVER, proxyOopDesc::doubleByte_at_put(), oopDesc::is_smi(), markSymbol(), and PROLOGUE_3.

Here is the call graph for this function:

PRIM_DECL_3 ( proxyOopPrimitives::setHighLow  ,
oop  receiver,
oop  high,
oop  low 
)

Definition at line 55 of file proxy_prims.cpp.

References ASSERT_RECEIVER, oopDesc::is_smi(), markSymbol(), PROLOGUE_3, proxyOopDesc::set_pointer(), and smiOopDesc::value().

Here is the call graph for this function:

PRIM_DECL_4 ( proxyOopPrimitives::callOut2  ,
oop  receiver,
oop  arg1,
oop  arg2,
oop  result 
)

Definition at line 284 of file proxy_prims.cpp.

References ASSERT_RECEIVER, convert_to_arg(), proxyOopDesc::get_pointer(), oopDesc::is_proxy(), markSymbol(), PROLOGUE_4, and proxyOopDesc::set_pointer().

Here is the call graph for this function:

PRIM_DECL_5 ( proxyOopPrimitives::callOut3  ,
oop  receiver,
oop  arg1,
oop  arg2,
oop  arg3,
oop  result 
)

Definition at line 305 of file proxy_prims.cpp.

References ASSERT_RECEIVER, convert_to_arg(), proxyOopDesc::get_pointer(), oopDesc::is_proxy(), markSymbol(), PROLOGUE_5, and proxyOopDesc::set_pointer().

Here is the call graph for this function:

PRIM_DECL_6 ( proxyOopPrimitives::callOut4  ,
oop  receiver,
oop  arg1,
oop  arg2,
oop  arg3,
oop  arg4,
oop  result 
)

Definition at line 330 of file proxy_prims.cpp.

References ASSERT_RECEIVER, convert_to_arg(), proxyOopDesc::get_pointer(), oopDesc::is_proxy(), markSymbol(), PROLOGUE_6, and proxyOopDesc::set_pointer().

Here is the call graph for this function:

PRIM_DECL_7 ( proxyOopPrimitives::callOut5  ,
oop  receiver,
oop  arg1,
oop  arg2,
oop  arg3,
oop  arg4,
oop  arg5,
oop  result 
)

Definition at line 360 of file proxy_prims.cpp.

References ASSERT_RECEIVER, convert_to_arg(), proxyOopDesc::get_pointer(), oopDesc::is_proxy(), markSymbol(), PROLOGUE_7, and proxyOopDesc::set_pointer().

Here is the call graph for this function:


Generated on Mon Oct 9 13:44:48 2006 for Strongtalk VM by  doxygen 1.4.7