lscript_execute.cpp File Reference

classes to execute bytecode More...

#include "linden_common.h"
#include <sstream>
#include "lscript_execute.h"
#include "lltimer.h"
#include "lscript_readlso.h"
#include "lscript_library.h"
#include "lscript_heapruntime.h"
#include "lscript_alloc.h"

Include dependency graph for lscript_execute.cpp:

Go to the source code of this file.

Functions

S32 lscript_push_variable (LLScriptLibData *data, U8 *buffer)
BOOL run_noop (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pop (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pops (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_popl (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_popv (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_popq (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_poparg (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_popip (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_popbp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_popsp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_popslr (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_dup (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_dups (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_dupl (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_dupv (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_dupq (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_store (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_stores (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_storel (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_storev (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_storeq (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_storeg (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_storegs (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_storegl (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_storegv (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_storegq (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_loadp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_loadsp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_loadlp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_loadvp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_loadqp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_loadgp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_loadgsp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_loadglp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_loadgvp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_loadgqp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_push (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushs (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushl (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushv (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushq (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushg (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushgs (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushgl (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushgv (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushgq (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_puship (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushbp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushsp (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushargb (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushargi (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushargf (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushargs (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushargv (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushargq (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushe (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pushev (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pusheq (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_pusharge (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
void print_type (U8 type)
void unknown_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void integer_integer_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void integer_float_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void integer_vector_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void float_integer_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void float_float_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void float_vector_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void string_string_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void string_key_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void key_string_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void key_key_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void vector_integer_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void vector_float_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void vector_vector_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void vector_quaternion_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void quaternion_quaternion_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void integer_list_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void float_list_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void string_list_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void key_list_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void vector_list_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void quaternion_list_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void list_integer_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void list_float_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void list_string_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void list_key_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void list_vector_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void list_quaternion_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void list_list_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
BOOL run_add (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_sub (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_mul (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_div (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_mod (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_eq (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_neq (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_leq (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_geq (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_less (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_greater (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_bitand (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_bitor (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_bitxor (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_booland (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_boolor (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_shl (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_shr (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
void integer_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void float_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void vector_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void quaternion_operation (U8 *buffer, LSCRIPTOpCodesEnum opcode)
BOOL run_neg (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_bitnot (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_boolnot (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_jump (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_jumpif (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_jumpnif (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_state (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_call (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_return (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
S32 axtoi (char *hexStg)
BOOL run_cast (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_stacktos (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
void lscript_stacktol_pop_variable (LLScriptLibData *data, U8 *buffer, char type)
BOOL run_stacktol (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_print (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
void lscript_run (char *filename, BOOL b_debug)
void lscript_pop_variable (LLScriptLibData *data, U8 *buffer, char type)
void lscript_push_return_variable (LLScriptLibData *data, U8 *buffer)
BOOL run_calllib (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)
BOOL run_calllib_two_byte (U8 *buffer, S32 &offset, BOOL b_print, const LLUUID &id)

Variables

void(*[LST_EOF][LST_EOF]) binary_operations (U8 *buffer, LSCRIPTOpCodesEnum opcode)
void(*[LST_EOF]) unary_operations (U8 *buffer, LSCRIPTOpCodesEnum opcode)
char * LSCRIPTRunTimeFaultStrings [LSRF_EOF]


Detailed Description

classes to execute bytecode

LicenseInfo
firstyear=2002&license=viewergpl

Copyright (c) 2002-2007, Linden Research, Inc.

Second Life Viewer Source Code The source code in this file ("Source Code") is provided by Linden Lab to you under the terms of the GNU General Public License, version 2.0 ("GPL"), unless you have obtained a separate licensing agreement ("Other License"), formally executed by you and Linden Lab. Terms of the GPL can be found in doc/GPL-license.txt in this distribution, or online at http://secondlife.com/developers/opensource/gplv2

There are special exceptions to the terms and conditions of the GPL as it is applied to this Source Code. View the full text of the exception in the file doc/FLOSS-exception.txt in this software distribution, or online at http://secondlife.com/developers/opensource/flossexception

By copying, modifying or distributing this software, you acknowledge that you have read and understood your obligations described above, and agree to abide by those obligations.

ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, COMPLETENESS OR PERFORMANCE. $/LicenseInfo$

Definition in file lscript_execute.cpp.


Function Documentation

S32 axtoi ( char *  hexStg  ) 

Definition at line 3036 of file lscript_execute.cpp.

References count, m, n, and S32.

void float_float_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1664 of file lscript_execute.cpp.

References LOPC_ADD, LOPC_DIV, LOPC_EQ, LOPC_GEQ, LOPC_GREATER, LOPC_LEQ, LOPC_LESS, LOPC_MUL, LOPC_NEQ, LOPC_SUB, lscript_pop_float(), lscript_push(), LSRF_MATH, S32, and set_fault().

Referenced by LLScriptExecute::init().

void float_integer_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1607 of file lscript_execute.cpp.

References LOPC_ADD, LOPC_DIV, LOPC_EQ, LOPC_GEQ, LOPC_GREATER, LOPC_LEQ, LOPC_LESS, LOPC_MUL, LOPC_NEQ, LOPC_SUB, lscript_pop_float(), lscript_pop_int(), lscript_push(), LSRF_MATH, S32, and set_fault().

Referenced by LLScriptExecute::init().

void float_list_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2000 of file lscript_execute.cpp.

References get_max_heap_size(), list, LOPC_ADD, lsa_preadd_lists(), lscript_pop_float(), lscript_pop_int(), lscript_push(), LST_LIST, NULL, and S32.

Referenced by LLScriptExecute::init().

void float_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2593 of file lscript_execute.cpp.

References LOPC_NEG, lscript_pop_float(), and lscript_push().

Referenced by LLScriptExecute::init().

void float_vector_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1721 of file lscript_execute.cpp.

References LOPC_MUL, lscript_pop_float(), lscript_pop_vector(), and lscript_push().

Referenced by LLScriptExecute::init().

void integer_float_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1533 of file lscript_execute.cpp.

References LOPC_ADD, LOPC_DIV, LOPC_EQ, LOPC_GEQ, LOPC_GREATER, LOPC_LEQ, LOPC_LESS, LOPC_MUL, LOPC_NEQ, LOPC_SUB, lscript_pop_float(), lscript_pop_int(), lscript_push(), LSRF_MATH, S32, and set_fault().

Referenced by LLScriptExecute::init().

void integer_integer_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1442 of file lscript_execute.cpp.

References LOPC_ADD, LOPC_BITAND, LOPC_BITOR, LOPC_BITXOR, LOPC_BOOLAND, LOPC_BOOLOR, LOPC_DIV, LOPC_EQ, LOPC_GEQ, LOPC_GREATER, LOPC_LEQ, LOPC_LESS, LOPC_MOD, LOPC_MUL, LOPC_NEQ, LOPC_SHL, LOPC_SHR, LOPC_SUB, lscript_pop_int(), lscript_push(), LSRF_MATH, S32, and set_fault().

Referenced by LLScriptExecute::init().

void integer_list_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1976 of file lscript_execute.cpp.

References get_max_heap_size(), list, LOPC_ADD, lsa_preadd_lists(), lscript_pop_int(), lscript_push(), LST_LIST, NULL, and S32.

Referenced by LLScriptExecute::init().

void integer_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2571 of file lscript_execute.cpp.

References LOPC_BITNOT, LOPC_BOOLNOT, LOPC_NEG, lscript_pop_int(), lscript_push(), and S32.

Referenced by LLScriptExecute::init().

void integer_vector_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1590 of file lscript_execute.cpp.

References LOPC_MUL, lscript_pop_int(), lscript_pop_vector(), lscript_push(), and S32.

Referenced by LLScriptExecute::init().

void key_key_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1806 of file lscript_execute.cpp.

References LOPC_EQ, LOPC_NEQ, lsa_cmp_strings(), lscript_pop_int(), lscript_push(), and S32.

Referenced by LLScriptExecute::init().

void key_list_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2049 of file lscript_execute.cpp.

References get_max_heap_size(), list, LOPC_ADD, lsa_get_data(), lsa_preadd_lists(), lscript_pop_int(), lscript_push(), LST_KEY, LST_LIST, LST_STRING, LLScriptLibData::mKey, LLScriptLibData::mString, LLScriptLibData::mType, NULL, S32, and TRUE.

Referenced by LLScriptExecute::init().

void key_string_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1785 of file lscript_execute.cpp.

References LOPC_EQ, LOPC_NEQ, lsa_cmp_strings(), lscript_pop_int(), lscript_push(), and S32.

Referenced by LLScriptExecute::init().

void list_float_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2155 of file lscript_execute.cpp.

References get_max_heap_size(), list, LOPC_ADD, lsa_postadd_lists(), lscript_pop_float(), lscript_pop_int(), lscript_push(), LST_LIST, NULL, and S32.

Referenced by LLScriptExecute::init().

void list_integer_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2131 of file lscript_execute.cpp.

References get_max_heap_size(), list, LOPC_ADD, lsa_postadd_lists(), lscript_pop_int(), lscript_push(), LST_LIST, NULL, and S32.

Referenced by LLScriptExecute::init().

void list_key_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2204 of file lscript_execute.cpp.

References get_max_heap_size(), list, LOPC_ADD, lsa_get_data(), lsa_postadd_lists(), lscript_pop_int(), lscript_push(), LST_KEY, LST_LIST, LST_STRING, LLScriptLibData::mKey, LLScriptLibData::mString, LLScriptLibData::mType, NULL, S32, and TRUE.

Referenced by LLScriptExecute::init().

void list_list_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2286 of file lscript_execute.cpp.

References get_max_heap_size(), LOPC_ADD, LOPC_EQ, LOPC_NEQ, lsa_cat_lists(), lsa_cmp_lists(), lscript_pop_int(), lscript_push(), and S32.

Referenced by LLScriptExecute::init().

void list_quaternion_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2261 of file lscript_execute.cpp.

References get_max_heap_size(), list, LOPC_ADD, lsa_postadd_lists(), lscript_pop_int(), lscript_pop_quaternion(), lscript_push(), LST_LIST, NULL, and S32.

Referenced by LLScriptExecute::init().

void list_string_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2179 of file lscript_execute.cpp.

References get_max_heap_size(), list, LOPC_ADD, lsa_get_data(), lsa_postadd_lists(), lscript_pop_int(), lscript_push(), LST_LIST, NULL, S32, and TRUE.

Referenced by LLScriptExecute::init().

void list_vector_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2236 of file lscript_execute.cpp.

References get_max_heap_size(), list, LOPC_ADD, lsa_postadd_lists(), lscript_pop_int(), lscript_pop_vector(), lscript_push(), LST_LIST, NULL, and S32.

Referenced by LLScriptExecute::init().

void lscript_pop_variable ( LLScriptLibData data,
U8 buffer,
char  type 
)

Definition at line 3758 of file lscript_execute.cpp.

References bytestream2char(), get_register(), LREG_HR, lsa_decrease_ref_count(), lsa_get_list_ptr(), lscript_pop_float(), lscript_pop_int(), lscript_pop_quaternion(), lscript_pop_vector(), LST_FLOATINGPOINT, LST_INTEGER, LST_KEY, LST_LIST, LST_QUATERNION, LST_STRING, LST_VECTOR, LLScriptLibData::mFP, LLScriptLibData::mInteger, LLScriptLibData::mKey, LLScriptLibData::mListp, LLScriptLibData::mQuat, LLScriptLibData::mString, LLScriptLibData::mType, LLScriptLibData::mVec, S32, safe_heap_bytestream_count_char(), safe_heap_check_address(), size, SIZEOF_SCRIPT_ALLOC_ENTRY, and TRUE.

Referenced by run_calllib(), and run_calllib_two_byte().

void lscript_push_return_variable ( LLScriptLibData data,
U8 buffer 
)

Definition at line 3845 of file lscript_execute.cpp.

References FALSE, get_max_heap_size(), lsa_heap_add_data(), lscript_local_store(), LST_FLOATINGPOINT, LST_INTEGER, LST_KEY, LST_LIST, LST_QUATERNION, LST_STRING, LST_VECTOR, LLScriptLibData::mFP, LLScriptLibData::mInteger, LLScriptLibData::mQuat, LLScriptLibData::mType, LLScriptLibData::mVec, and S32.

Referenced by run_calllib(), and run_calllib_two_byte().

S32 lscript_push_variable ( LLScriptLibData data,
U8 buffer 
)

Definition at line 3879 of file lscript_execute.cpp.

References FALSE, get_max_heap_size(), lsa_heap_add_data(), lscript_push(), LST_FLOATINGPOINT, LST_INTEGER, LST_KEY, LST_LIST, LST_QUATERNION, LST_STRING, LST_VECTOR, LLScriptLibData::mFP, LLScriptLibData::mInteger, LLScriptLibData::mQuat, LLScriptLibData::mType, LLScriptLibData::mVec, and S32.

Referenced by LLScriptExecute::run().

void lscript_run ( char *  filename,
BOOL  b_debug 
)

Definition at line 3705 of file lscript_execute.cpp.

References LLFile::fopen(), get_register(), LLTimer::getElapsedTimeF32(), llendl, llerrs, llinfos, LREG_BP, LREG_HP, LREG_HR, LREG_IP, LREG_SP, LLScriptExecute::mBuffer, LLScriptExecute::mInstructionCount, NULL, LLUUID::null, LLScriptLSOParse::printData(), LLTimer::reset(), and LLScriptExecute::run().

void lscript_stacktol_pop_variable ( LLScriptLibData data,
U8 buffer,
char  type 
)

Definition at line 3467 of file lscript_execute.cpp.

References bytestream2char(), get_register(), LREG_HR, lsa_decrease_ref_count(), lsa_get_data(), lscript_pop_float(), lscript_pop_int(), lscript_pop_quaternion(), lscript_pop_vector(), LST_FLOATINGPOINT, LST_INTEGER, LST_KEY, LST_LIST, LST_QUATERNION, LST_STRING, LST_VECTOR, LLScriptLibData::mFP, LLScriptLibData::mInteger, LLScriptLibData::mKey, LLScriptLibData::mListp, LLScriptLibData::mQuat, LLScriptLibData::mString, LLScriptLibData::mType, LLScriptLibData::mVec, S32, safe_heap_bytestream_count_char(), safe_heap_check_address(), size, SIZEOF_SCRIPT_ALLOC_ENTRY, and TRUE.

Referenced by run_stacktol().

void print_type ( U8  type  ) 

Definition at line 1405 of file lscript_execute.cpp.

References LSCRIPTTypeByte, LST_FLOATINGPOINT, LST_INTEGER, LST_KEY, LST_LIST, LST_QUATERNION, LST_STRING, and LST_VECTOR.

Referenced by run_add(), run_cast(), run_div(), run_eq(), run_geq(), run_greater(), run_jumpif(), run_jumpnif(), run_leq(), run_less(), run_mod(), run_mul(), run_neg(), run_neq(), run_print(), and run_sub().

void quaternion_list_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2106 of file lscript_execute.cpp.

References get_max_heap_size(), list, LOPC_ADD, lsa_preadd_lists(), lscript_pop_int(), lscript_pop_quaternion(), lscript_push(), LST_LIST, NULL, and S32.

Referenced by LLScriptExecute::init().

void quaternion_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2626 of file lscript_execute.cpp.

References LOPC_NEG, lscript_pop_quaternion(), and lscript_push().

Referenced by LLScriptExecute::init().

void quaternion_quaternion_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1937 of file lscript_execute.cpp.

References LLQuaternion::conjQuat(), LOPC_ADD, LOPC_DIV, LOPC_EQ, LOPC_MUL, LOPC_NEQ, LOPC_SUB, lscript_pop_quaternion(), lscript_push(), and S32.

Referenced by LLScriptExecute::init().

BOOL run_add ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2312 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_ADD, print_type(), and safe_instruction_bytestream2byte().

Referenced by LLScriptExecute::init().

BOOL run_bitand ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2513 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_BITAND, and LST_INTEGER.

Referenced by LLScriptExecute::init().

BOOL run_bitnot ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2659 of file lscript_execute.cpp.

References FALSE, LOPC_BITNOT, LST_INTEGER, and unary_operations.

Referenced by LLScriptExecute::init().

BOOL run_bitor ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2521 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_BITOR, and LST_INTEGER.

Referenced by LLScriptExecute::init().

BOOL run_bitxor ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2529 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_BITXOR, and LST_INTEGER.

Referenced by LLScriptExecute::init().

BOOL run_booland ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2537 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_BOOLAND, and LST_INTEGER.

Referenced by LLScriptExecute::init().

BOOL run_boolnot ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2668 of file lscript_execute.cpp.

References FALSE, LOPC_BOOLNOT, LST_INTEGER, and unary_operations.

Referenced by LLScriptExecute::init().

BOOL run_boolor ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2545 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_BOOLOR, and LST_INTEGER.

Referenced by LLScriptExecute::init().

BOOL run_call ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2987 of file lscript_execute.cpp.

References bytestream2integer(), FALSE, func, get_register(), LREG_GFR, LREG_SR, lscript_local_store(), LSRF_BOUND_CHECK_ERROR, S32, safe_instruction_bytestream2integer(), and set_fault().

Referenced by LLScriptExecute::init().

BOOL run_calllib ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 3920 of file lscript_execute.cpp.

References add_register_fp(), char2type(), FALSE, gScriptLibrary, i, LREG_ESR, LREG_SLR, lscript_pop_int(), lscript_pop_variable(), lscript_poparg(), lscript_push_return_variable(), LSRF_BOUND_CHECK_ERROR, LLScriptLibraryFunction::mArgs, LLScriptLibraryFunction::mDesc, LLScriptLibraryFunction::mEnergyUse, LLScriptLibraryFunction::mExecFunc, LLScriptLibrary::mFunctions, LLScriptLibraryFunction::mName, LLScriptLibrary::mNextNumber, LLScriptLibraryFunction::mReturnType, LLScriptLibraryFunction::mSleepTime, LLScriptLibData::mType, NULL, S32, safe_instruction_bytestream2byte(), set_bp(), and set_fault().

Referenced by LLScriptExecute::init().

BOOL run_calllib_two_byte ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 3991 of file lscript_execute.cpp.

References add_register_fp(), char2type(), FALSE, gScriptLibrary, i, LREG_ESR, LREG_SLR, lscript_pop_int(), lscript_pop_variable(), lscript_poparg(), lscript_push_return_variable(), LSRF_BOUND_CHECK_ERROR, LLScriptLibraryFunction::mArgs, LLScriptLibraryFunction::mDesc, LLScriptLibraryFunction::mEnergyUse, LLScriptLibraryFunction::mExecFunc, LLScriptLibrary::mFunctions, LLScriptLibraryFunction::mName, LLScriptLibrary::mNextNumber, LLScriptLibraryFunction::mReturnType, LLScriptLibraryFunction::mSleepTime, LLScriptLibData::mType, NULL, S32, safe_instruction_bytestream2u16(), set_bp(), and set_fault().

Referenced by LLScriptExecute::init().

BOOL run_cast ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 3072 of file lscript_execute.cpp.

References base, bytestream2char(), LLQuaternion::DEFAULT, FALSE, get_max_heap_size(), get_register(), list, LREG_HR, lsa_decrease_ref_count(), lsa_get_data(), lsa_heap_add_data(), lscript_pop_float(), lscript_pop_int(), lscript_pop_quaternion(), lscript_pop_vector(), lscript_push(), LST_FLOATINGPOINT, LST_INTEGER, LST_KEY, LST_LIST, LST_QUATERNION, LST_STRING, LST_VECTOR, LLQuaternion::mQ, LLVector3::mV, NULL, print_type(), S32, safe_heap_bytestream_count_char(), safe_heap_check_address(), safe_instruction_bytestream2byte(), size, SIZEOF_SCRIPT_ALLOC_ENTRY, TRUE, VS, VW, VX, VY, VZ, and LLVector3::zero.

Referenced by LLScriptExecute::init().

BOOL run_div ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2367 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_DIV, print_type(), and safe_instruction_bytestream2byte().

Referenced by LLScriptExecute::init().

BOOL run_dup ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 743 of file lscript_execute.cpp.

References bytestream2integer(), FALSE, get_register(), LREG_SP, lscript_push(), and S32.

Referenced by LLScriptExecute::init().

BOOL run_dupl ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 766 of file lscript_execute.cpp.

References bytestream2integer(), FALSE, get_register(), LREG_SP, lsa_increase_ref_count(), lscript_push(), and S32.

Referenced by LLScriptExecute::init().

BOOL run_dupq ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 790 of file lscript_execute.cpp.

References bytestream2quaternion(), FALSE, get_register(), LREG_SP, lscript_push(), and S32.

Referenced by LLScriptExecute::init().

BOOL run_dups ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 754 of file lscript_execute.cpp.

References bytestream2integer(), FALSE, get_register(), LREG_SP, lsa_increase_ref_count(), lscript_push(), and S32.

Referenced by LLScriptExecute::init().

BOOL run_dupv ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 778 of file lscript_execute.cpp.

References bytestream2vector(), FALSE, get_register(), LREG_SP, lscript_push(), and S32.

Referenced by LLScriptExecute::init().

BOOL run_eq ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2404 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_EQ, print_type(), and safe_instruction_bytestream2byte().

Referenced by LLScriptExecute::init().

BOOL run_geq ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2458 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_GEQ, print_type(), and safe_instruction_bytestream2byte().

Referenced by LLScriptExecute::init().

BOOL run_greater ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2494 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_GREATER, print_type(), and safe_instruction_bytestream2byte().

Referenced by LLScriptExecute::init().

BOOL run_jump ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2677 of file lscript_execute.cpp.

References FALSE, S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_jumpif ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2689 of file lscript_execute.cpp.

References bytestream2char(), FALSE, get_register(), LLVector3::isExactlyZero(), LLQuaternion::isIdentity(), list, LREG_HR, lsa_decrease_ref_count(), lsa_get_list_ptr(), lscript_pop_float(), lscript_pop_int(), lscript_pop_quaternion(), lscript_pop_vector(), LST_FLOATINGPOINT, LST_INTEGER, LST_KEY, LST_LIST, LST_QUATERNION, LST_STRING, LST_VECTOR, print_type(), S32, safe_heap_bytestream_count_char(), safe_heap_check_address(), safe_instruction_bytestream2byte(), safe_instruction_bytestream2integer(), size, SIZEOF_SCRIPT_ALLOC_ENTRY, TRUE, and type.

Referenced by LLScriptExecute::init().

BOOL run_jumpnif ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2816 of file lscript_execute.cpp.

References bytestream2char(), FALSE, get_register(), LLVector3::isExactlyZero(), LLQuaternion::isIdentity(), list, LREG_HR, lsa_decrease_ref_count(), lsa_get_list_ptr(), lscript_pop_float(), lscript_pop_int(), lscript_pop_quaternion(), lscript_pop_vector(), LST_FLOATINGPOINT, LST_INTEGER, LST_KEY, LST_LIST, LST_QUATERNION, LST_STRING, LST_VECTOR, print_type(), S32, safe_heap_bytestream_count_char(), safe_heap_check_address(), safe_instruction_bytestream2byte(), safe_instruction_bytestream2integer(), size, SIZEOF_SCRIPT_ALLOC_ENTRY, TRUE, and type.

Referenced by LLScriptExecute::init().

BOOL run_leq ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2440 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_LEQ, print_type(), and safe_instruction_bytestream2byte().

Referenced by LLScriptExecute::init().

BOOL run_less ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2476 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_LESS, print_type(), and safe_instruction_bytestream2byte().

Referenced by LLScriptExecute::init().

BOOL run_loadglp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1080 of file lscript_execute.cpp.

References FALSE, lsa_decrease_ref_count(), lscript_global_get(), lscript_global_store(), lscript_pop_int(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_loadgp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1049 of file lscript_execute.cpp.

References FALSE, lscript_global_store(), lscript_pop_int(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_loadgqp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1112 of file lscript_execute.cpp.

References FALSE, lscript_global_store(), lscript_pop_quaternion(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_loadgsp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1062 of file lscript_execute.cpp.

References FALSE, lsa_decrease_ref_count(), lscript_global_get(), lscript_global_store(), lscript_pop_int(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_loadgvp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1098 of file lscript_execute.cpp.

References FALSE, lscript_global_store(), lscript_pop_vector(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_loadlp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1003 of file lscript_execute.cpp.

References FALSE, lsa_decrease_ref_count(), lscript_local_get(), lscript_local_store(), lscript_pop_int(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_loadp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 972 of file lscript_execute.cpp.

References FALSE, lscript_local_store(), lscript_pop_int(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_loadqp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1035 of file lscript_execute.cpp.

References FALSE, lscript_local_store(), lscript_pop_quaternion(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_loadsp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 985 of file lscript_execute.cpp.

References FALSE, lsa_decrease_ref_count(), lscript_local_get(), lscript_local_store(), lscript_pop_int(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_loadvp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1021 of file lscript_execute.cpp.

References FALSE, lscript_local_store(), lscript_pop_vector(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_mod ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2385 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_MOD, print_type(), and safe_instruction_bytestream2byte().

Referenced by LLScriptExecute::init().

BOOL run_mul ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2349 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_MUL, print_type(), and safe_instruction_bytestream2byte().

Referenced by LLScriptExecute::init().

BOOL run_neg ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2644 of file lscript_execute.cpp.

References FALSE, LOPC_NEG, print_type(), safe_instruction_bytestream2byte(), and unary_operations.

Referenced by LLScriptExecute::init().

BOOL run_neq ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2422 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_NEQ, print_type(), and safe_instruction_bytestream2byte().

Referenced by LLScriptExecute::init().

BOOL run_noop ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 635 of file lscript_execute.cpp.

References FALSE.

Referenced by LLScriptExecute::init().

BOOL run_pop ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 643 of file lscript_execute.cpp.

References FALSE, lscript_poparg(), LSCRIPTDataSize, and LST_INTEGER.

Referenced by LLScriptExecute::init().

BOOL run_poparg ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 692 of file lscript_execute.cpp.

References FALSE, lscript_poparg(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_popbp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 713 of file lscript_execute.cpp.

References FALSE, lscript_pop_int(), S32, and set_bp().

Referenced by LLScriptExecute::init().

BOOL run_popip ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 704 of file lscript_execute.cpp.

References FALSE, and lscript_pop_int().

Referenced by LLScriptExecute::init().

BOOL run_popl ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 663 of file lscript_execute.cpp.

References FALSE, lsa_decrease_ref_count(), lscript_pop_int(), and S32.

Referenced by LLScriptExecute::init().

BOOL run_popq ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 683 of file lscript_execute.cpp.

References FALSE, lscript_poparg(), LSCRIPTDataSize, and LST_QUATERNION.

Referenced by LLScriptExecute::init().

BOOL run_pops ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 652 of file lscript_execute.cpp.

References FALSE, lsa_decrease_ref_count(), lscript_pop_int(), and S32.

Referenced by LLScriptExecute::init().

BOOL run_popslr ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 733 of file lscript_execute.cpp.

References FALSE, LREG_SLR, lscript_pop_int(), S32, and set_register().

Referenced by LLScriptExecute::init().

BOOL run_popsp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 723 of file lscript_execute.cpp.

References FALSE, lscript_pop_int(), S32, and set_sp().

Referenced by LLScriptExecute::init().

BOOL run_popv ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 674 of file lscript_execute.cpp.

References FALSE, lscript_poparg(), LSCRIPTDataSize, and LST_VECTOR.

Referenced by LLScriptExecute::init().

BOOL run_print ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 3584 of file lscript_execute.cpp.

References bytestream2char(), FALSE, get_register(), LREG_HR, lsa_decrease_ref_count(), lsa_get_data(), lscript_pop_float(), lscript_pop_int(), lscript_pop_quaternion(), lscript_pop_vector(), LST_FLOATINGPOINT, LST_INTEGER, LST_KEY, LST_LIST, LST_QUATERNION, LST_STRING, LST_VECTOR, LLScriptLibData::mFP, LLScriptLibData::mInteger, LLScriptLibData::mKey, LLScriptLibData::mListp, LLQuaternion::mQ, LLScriptLibData::mQuat, LLScriptLibData::mString, LLScriptLibData::mType, LLVector3::mV, LLScriptLibData::mVec, print_type(), S32, safe_heap_bytestream_count_char(), safe_heap_check_address(), safe_instruction_bytestream2byte(), size, SIZEOF_SCRIPT_ALLOC_ENTRY, TRUE, type, VS, VX, VY, and VZ.

Referenced by LLScriptExecute::init().

BOOL run_push ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1126 of file lscript_execute.cpp.

References FALSE, lscript_local_get(), lscript_push(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_pushargb ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1291 of file lscript_execute.cpp.

References FALSE, lscript_push(), and safe_instruction_bytestream2byte().

Referenced by LLScriptExecute::init().

BOOL run_pusharge ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1393 of file lscript_execute.cpp.

References FALSE, lscript_pusharge(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_pushargf ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1315 of file lscript_execute.cpp.

References FALSE, lscript_push(), and safe_instruction_bytestream2float().

Referenced by LLScriptExecute::init().

BOOL run_pushargi ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1303 of file lscript_execute.cpp.

References FALSE, lscript_push(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_pushargq ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1357 of file lscript_execute.cpp.

References FALSE, lscript_push(), LLQuaternion::mQ, safe_instruction_bytestream2quaternion(), VS, VX, VY, and VZ.

Referenced by LLScriptExecute::init().

BOOL run_pushargs ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1327 of file lscript_execute.cpp.

References FALSE, get_max_heap_size(), lsa_heap_add_data(), lscript_push(), S32, safe_instruction_bytestream2char(), safe_instruction_bytestream_count_char(), size, and TRUE.

Referenced by LLScriptExecute::init().

BOOL run_pushargv ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1345 of file lscript_execute.cpp.

References FALSE, lscript_push(), LLVector3::mV, safe_instruction_bytestream2vector(), VX, VY, and VZ.

Referenced by LLScriptExecute::init().

BOOL run_pushbp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1273 of file lscript_execute.cpp.

References FALSE, get_register(), LREG_BP, and lscript_push().

Referenced by LLScriptExecute::init().

BOOL run_pushe ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1369 of file lscript_execute.cpp.

References FALSE, lscript_pusharge(), LSCRIPTDataSize, and LST_INTEGER.

Referenced by LLScriptExecute::init().

BOOL run_pusheq ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1385 of file lscript_execute.cpp.

References FALSE, lscript_pusharge(), LSCRIPTDataSize, and LST_QUATERNION.

Referenced by LLScriptExecute::init().

BOOL run_pushev ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1377 of file lscript_execute.cpp.

References FALSE, lscript_pusharge(), LSCRIPTDataSize, and LST_VECTOR.

Referenced by LLScriptExecute::init().

BOOL run_pushg ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1195 of file lscript_execute.cpp.

References FALSE, lscript_global_get(), lscript_push(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_pushgl ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1222 of file lscript_execute.cpp.

References FALSE, lsa_increase_ref_count(), lscript_global_get(), lscript_push(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_pushgq ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1250 of file lscript_execute.cpp.

References FALSE, lscript_global_get(), lscript_push(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_pushgs ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1208 of file lscript_execute.cpp.

References FALSE, lsa_increase_ref_count(), lscript_global_get(), lscript_push(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_pushgv ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1236 of file lscript_execute.cpp.

References FALSE, lscript_global_get(), lscript_push(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_puship ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1264 of file lscript_execute.cpp.

References FALSE, and lscript_push().

Referenced by LLScriptExecute::init().

BOOL run_pushl ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1153 of file lscript_execute.cpp.

References FALSE, lsa_increase_ref_count(), lscript_local_get(), lscript_push(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_pushq ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1181 of file lscript_execute.cpp.

References FALSE, lscript_local_get(), lscript_push(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_pushs ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1139 of file lscript_execute.cpp.

References FALSE, lsa_increase_ref_count(), lscript_local_get(), lscript_push(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_pushsp ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1282 of file lscript_execute.cpp.

References FALSE, get_register(), LREG_SP, and lscript_push().

Referenced by LLScriptExecute::init().

BOOL run_pushv ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 1167 of file lscript_execute.cpp.

References FALSE, lscript_local_get(), lscript_push(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_return ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 3025 of file lscript_execute.cpp.

References FALSE, lscript_pop_int(), S32, and set_bp().

Referenced by LLScriptExecute::init().

BOOL run_shl ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2554 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_SHL, and LST_INTEGER.

Referenced by LLScriptExecute::init().

BOOL run_shr ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2562 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_SHR, and LST_INTEGER.

Referenced by LLScriptExecute::init().

BOOL run_stacktol ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 3552 of file lscript_execute.cpp.

References FALSE, get_max_heap_size(), get_register(), i, LREG_FR, lsa_heap_add_data(), lscript_pop_char(), lscript_push(), lscript_stacktol_pop_variable(), LST_LIST, LLScriptLibData::mListp, LLScriptLibData::mType, S32, safe_instruction_bytestream2integer(), TRUE, and type.

Referenced by LLScriptExecute::init().

BOOL run_stacktos ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 3446 of file lscript_execute.cpp.

References FALSE, get_max_heap_size(), get_register(), i, LREG_FR, lsa_heap_add_data(), lscript_pop_char(), lscript_pop_int(), lscript_push(), S32, and TRUE.

Referenced by LLScriptExecute::init().

BOOL run_state ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2951 of file lscript_execute.cpp.

References FALSE, get_event_register(), get_register(), LREG_CE, LREG_CS, LREG_NS, LREG_VN, lscript_pop_int(), LSCRIPTStateBitField, LSL2_VERSION1_END_NUMBER, LSL2_VERSION_NUMBER, LSTT_STATE_EXIT, S32, safe_instruction_bytestream2integer(), set_bp(), set_event_register(), and set_register().

Referenced by LLScriptExecute::init().

BOOL run_store ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 802 of file lscript_execute.cpp.

References bytestream2integer(), FALSE, get_register(), LREG_SP, lscript_local_store(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_storeg ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 886 of file lscript_execute.cpp.

References bytestream2integer(), FALSE, get_register(), LREG_SP, lscript_global_store(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_storegl ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 921 of file lscript_execute.cpp.

References bytestream2integer(), FALSE, get_register(), LREG_SP, lsa_decrease_ref_count(), lsa_increase_ref_count(), lscript_global_get(), lscript_global_store(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_storegq ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 957 of file lscript_execute.cpp.

References bytestream2quaternion(), FALSE, get_register(), LREG_SP, lscript_global_store(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_storegs ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 900 of file lscript_execute.cpp.

References bytestream2integer(), FALSE, get_register(), LREG_SP, lsa_decrease_ref_count(), lsa_increase_ref_count(), lscript_global_get(), lscript_global_store(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_storegv ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 942 of file lscript_execute.cpp.

References bytestream2vector(), FALSE, get_register(), LREG_SP, lscript_global_store(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_storel ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 836 of file lscript_execute.cpp.

References bytestream2integer(), FALSE, get_register(), LREG_SP, lsa_decrease_ref_count(), lsa_increase_ref_count(), lscript_local_get(), lscript_local_store(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_storeq ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 871 of file lscript_execute.cpp.

References bytestream2quaternion(), FALSE, get_register(), LREG_SP, lscript_local_store(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_stores ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 816 of file lscript_execute.cpp.

References bytestream2integer(), FALSE, get_register(), LREG_SP, lsa_decrease_ref_count(), lsa_increase_ref_count(), lscript_local_get(), lscript_local_store(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_storev ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 856 of file lscript_execute.cpp.

References bytestream2vector(), FALSE, get_register(), LREG_SP, lscript_local_store(), S32, and safe_instruction_bytestream2integer().

Referenced by LLScriptExecute::init().

BOOL run_sub ( U8 buffer,
S32 offset,
BOOL  b_print,
const LLUUID id 
)

Definition at line 2331 of file lscript_execute.cpp.

References binary_operations, FALSE, LOPC_SUB, print_type(), and safe_instruction_bytestream2byte().

Referenced by LLScriptExecute::init().

void string_key_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1764 of file lscript_execute.cpp.

References LOPC_EQ, LOPC_NEQ, lsa_cmp_strings(), lscript_pop_int(), lscript_push(), and S32.

Referenced by LLScriptExecute::init().

void string_list_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2024 of file lscript_execute.cpp.

References get_max_heap_size(), list, LOPC_ADD, lsa_get_data(), lsa_preadd_lists(), lscript_pop_int(), lscript_push(), LST_LIST, NULL, S32, and TRUE.

Referenced by LLScriptExecute::init().

void string_string_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1738 of file lscript_execute.cpp.

References get_max_heap_size(), LOPC_ADD, LOPC_EQ, LOPC_NEQ, lsa_cat_strings(), lsa_cmp_strings(), lscript_pop_int(), lscript_push(), and S32.

Referenced by LLScriptExecute::init().

void unknown_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1437 of file lscript_execute.cpp.

Referenced by LLScriptExecute::init().

void vector_float_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1851 of file lscript_execute.cpp.

References LOPC_DIV, LOPC_MUL, lscript_pop_float(), lscript_pop_vector(), lscript_push(), LSRF_MATH, and set_fault().

Referenced by LLScriptExecute::init().

void vector_integer_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1827 of file lscript_execute.cpp.

References LOPC_DIV, LOPC_MUL, lscript_pop_int(), lscript_pop_vector(), lscript_push(), LSRF_MATH, S32, and set_fault().

Referenced by LLScriptExecute::init().

void vector_list_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2081 of file lscript_execute.cpp.

References get_max_heap_size(), list, LOPC_ADD, lsa_preadd_lists(), lscript_pop_int(), lscript_pop_vector(), lscript_push(), LST_LIST, NULL, and S32.

Referenced by LLScriptExecute::init().

void vector_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 2609 of file lscript_execute.cpp.

References LOPC_NEG, lscript_pop_vector(), and lscript_push().

Referenced by LLScriptExecute::init().

void vector_quaternion_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1915 of file lscript_execute.cpp.

References LOPC_DIV, LOPC_MUL, lscript_pop_quaternion(), lscript_pop_vector(), and lscript_push().

Referenced by LLScriptExecute::init().

void vector_vector_operation ( U8 buffer,
LSCRIPTOpCodesEnum  opcode 
)

Definition at line 1875 of file lscript_execute.cpp.

References LOPC_ADD, LOPC_EQ, LOPC_MOD, LOPC_MUL, LOPC_NEQ, LOPC_SUB, lscript_pop_vector(), lscript_push(), and S32.

Referenced by LLScriptExecute::init().


Variable Documentation

void(*[LST_EOF][LST_EOF]) binary_operations(U8 *buffer, LSCRIPTOpCodesEnum opcode)

Definition at line 43 of file lscript_execute.cpp.

Referenced by LLScriptExecute::init(), run_add(), run_bitand(), run_bitor(), run_bitxor(), run_booland(), run_boolor(), run_div(), run_eq(), run_geq(), run_greater(), run_leq(), run_less(), run_mod(), run_mul(), run_neq(), run_shl(), run_shr(), and run_sub().

char* LSCRIPTRunTimeFaultStrings[LSRF_EOF]

Initial value:

                
{
        "invalid",                              
        "Math Error",                   
        "Stack-Heap Collision", 
        "Bounds Check Error",   
        "Heap Error",                   
        "Version Mismatch",             
        "Missing Inventory",    
        "Hit Sandbox Limit",    
        "Chat Overrun",                 
        "Too Many Listens",                       
        "Lists may not contain lists" 
}

Definition at line 46 of file lscript_execute.cpp.

Referenced by LLScriptExecute::run().

void(*[LST_EOF]) unary_operations(U8 *buffer, LSCRIPTOpCodesEnum opcode)

Definition at line 44 of file lscript_execute.cpp.

Referenced by LLScriptExecute::init(), run_bitnot(), run_boolnot(), and run_neg().


Generated on Thu Jul 1 06:10:52 2010 for Second Life Viewer by  doxygen 1.4.7