Граф коммитов

611 Коммитов

Автор SHA1 Сообщение Дата
rogerl%netscape.com 3dd4d8ff15 Added post inc/dec for properties & names. 2000-05-11 00:35:06 +00:00
waldemar%netscape.com 7647f38e6f Added 'public' to the list of qualifiers 2000-05-09 20:55:09 +00:00
rogerl%netscape.com f1ae8af483 playing with gencode 2000-05-09 19:01:00 +00:00
beard%netscape.com a4dea03835 Needed to transfer ownwership of iCode from ICodeGenerator to ICodeModule 2000-05-09 18:59:12 +00:00
beard%netscape.com bcdfb1addd generalized gc_allocator copy constructor 2000-05-09 18:32:14 +00:00
beard%netscape.com 6812bcc78f removed JSFunction::operator delete 2000-05-09 18:31:43 +00:00
rogerl%netscape.com d3b5bfb405 Fixed leakage of ICodeModule via JSFunction 2000-05-09 18:09:33 +00:00
beard%netscape.com eb9d678d61 Need to modify string BEFORE caching iterators. 2000-05-09 06:39:39 +00:00
beard%netscape.com ad2ad1e77c ensure that source buffer is always terminated by a uni::null (which isn't automatically true for basic_string<T>). 2000-05-09 06:31:54 +00:00
beard%netscape.com 7a09fcc4cd map::find() works just fine on all platforms. 2000-05-09 05:55:30 +00:00
beard%netscape.com a2f5fc24f7 generating code rather than showing tokens, printing generic result rather than assuming it's a float64. 2000-05-09 05:46:26 +00:00
beard%netscape.com 1c816f64a6 LoadString now has JSString* as second operand 2000-05-09 05:38:48 +00:00
beard%netscape.com 6f85ea39ec Added JSString(const String&) and operator<<(Formatter&, const JSString&) 2000-05-09 05:37:58 +00:00
beard%netscape.com c7c46e062f LOAD_STRING now has String as second operand rather than String* 2000-05-09 05:18:16 +00:00
beard%netscape.com 8647206526 VC6 bustage: can't initialize refs using construction form 2000-05-09 04:29:32 +00:00
beard%netscape.com 7b293d0e75 std::numeric_limits isn't working... 2000-05-09 04:26:44 +00:00
beard%netscape.com 3f60dde90e JSNativeFunction::mCode returns JSValue now to avoid leaking 2000-05-09 03:57:28 +00:00
beard%netscape.com 3553a3b540 print now returns JSValue, added space between args when printing 2000-05-09 03:56:56 +00:00
beard%netscape.com d0c644149e CASE(string) 2000-05-09 03:56:08 +00:00
beard%netscape.com e0725293d9 g++ basic_string annoyances 2000-05-09 03:55:43 +00:00
beard%netscape.com 7f3d0eee51 needed deallocate(void*, size_type) on XP_UNIX for basic_string. 2000-05-09 03:46:03 +00:00
beard%netscape.com 5e272eaaf9 Fixed leaks by changing JSValue::toString()/toNumber() to return JSValue rather than JSValue*. LOAD_STRING now creates a JSString from a String*. 2000-05-09 03:11:54 +00:00
beard%netscape.com 0327df07be Added JSString for gc-able UNICODE strings, changed toString(), toNumber() to return JSValue rather than JSValue*. 2000-05-09 03:10:04 +00:00
beard%netscape.com f97cc95de0 make wchar_t an atomic type, for JSString. 2000-05-09 03:06:49 +00:00
waldemar%netscape.com 0857316bd7 Changed default constructor name from 'new' to the same name as its class 2000-05-09 00:10:50 +00:00
rogerl%netscape.com d703cf6197 testing native 'print' function 2000-05-08 23:12:10 +00:00
rogerl%netscape.com 261b8ef660 Added more string handling + valueToString/Number code.
NativeFunction support.
2000-05-08 22:59:42 +00:00
waldemar%netscape.com 1d6bd07587 Fixed syntax errors 2000-05-06 03:47:35 +00:00
waldemar%netscape.com fd0ea8f40a Reordered includes to ensure that systemtypes.h is always included first; that's needed for Visual C++ 2000-05-06 03:47:13 +00:00
waldemar%netscape.com 73847d74d6 Reordered files back to dependency order. Added gc_allocator.h. 2000-05-06 03:33:25 +00:00
waldemar%netscape.com fdfd1288f5 Fixed syntax error 2000-05-06 03:31:50 +00:00
waldemar%netscape.com 4a3e9723dd Added formatters, zones, and other miscellaneous utilities 2000-05-06 03:31:35 +00:00
waldemar%netscape.com d9dcb3515c Fixed mac warning 2000-05-06 03:30:37 +00:00
rogerl%netscape.com 504e3cfd96 Load_String 2000-05-05 23:23:13 +00:00
rogerl%netscape.com 7030042c20 Basic string literal & value support 2000-05-05 23:22:31 +00:00
rogerl%netscape.com ca4af3db37 New arithmetic ops. 2000-05-05 21:38:16 +00:00
rogerl%netscape.com ed1a08b00a Bunch more arithmetic ops etc.
Also fixed case munging when class name was only 2 letters long.
2000-05-05 21:36:36 +00:00
beard%netscape.com 8f3673e367 Added debugger source 2000-05-05 18:20:05 +00:00
beard%netscape.com aa279464b9 No need to use string, now that size_t LineReader::readLine(String& wstr) exists. 2000-05-05 05:25:00 +00:00
beard%netscape.com 70fd8a8a97 added size_t LineReader::readLine(String& wstr) for convenience. 2000-05-05 05:24:02 +00:00
beard%netscape.com eba9b0985c regenerated dependencies 2000-05-05 04:58:56 +00:00
beard%netscape.com ec5da004d9 LineReader returns at least '\n' 2000-05-05 04:50:45 +00:00
beard%netscape.com 5a1ab13253 stdin rather than cin 2000-05-05 04:45:39 +00:00
beard%netscape.com a3c7ab8446 Needed to use namespace Interpreter to see Context, using LineReader instead of istream. 2000-05-05 04:44:51 +00:00
beard%netscape.com f1cda623c3 remove unnecessary #include <iostream> 2000-05-05 04:44:01 +00:00
beard%netscape.com efc76ad32c Use FILE* instead of istream& for better line handling 2000-05-05 04:43:12 +00:00
beard%netscape.com 825b909a2d EOF handling 2000-05-05 04:19:20 +00:00
beard%netscape.com a6aad50ed4 can't use std::getline() with a String on all platforms. 2000-05-05 04:10:01 +00:00
beard%netscape.com 00af2ac3c8 forward declaring std::istream. 2000-05-05 04:08:59 +00:00
beard%netscape.com 57e570a531 fixed ICodeGenerator/ICodeModule::print on Mac, which seems to be getting confused when using operator<< in another namespace. 2000-05-05 04:05:56 +00:00
beard%netscape.com a7729c3959 removed unused macro NS_JSICG. 2000-05-05 04:04:23 +00:00
rginda%netscape.com d2e0252642 much debugger spankage; parse and execute step, continue, set, and print (kind-of) commands.
push implementation details of ICodeGenerator::print() into InstructionStream so they can be shared with ICodeModule.

copy variableList from ICodeGenerator to ICodeModule.

s/ScringAtom/const StringAtom/ in gencode.pl, regenerate vmtypes.h
2000-05-04 22:42:49 +00:00
rogerl%netscape.com cc4d067c13 Added const to the StringAtom usage.
Propagated variableList to ICodeModule
2000-05-04 22:08:38 +00:00
beard%netscape.com 5a2a9f040d fix assert bustage in DEBUG build. 2000-05-03 01:41:37 +00:00
rogerl%netscape.com 0573914859 Cleaning up some label stuff 2000-05-02 21:36:28 +00:00
beard%netscape.com 846e79c959 warnings on Linux 2000-05-01 17:18:49 +00:00
beard%netscape.com 97c6f17dfa fixing breakage on Linux 2000-05-01 17:18:23 +00:00
beard%netscape.com 4942c057e3 removed unnecessary casts to int32 in ICodeGenerator::setLabel() which were generating warnings. 2000-05-01 17:11:36 +00:00
waldemar%netscape.com 1d32f1a9b3 Changed syntax of identifiers, attributes, expressions, functions, and packages. Added export, use, constructor, namespace, import. 2000-05-01 06:21:39 +00:00
beard%netscape.com 2d4c0ff91a made startsWith() static, to fix no prototype warning. 2000-04-30 14:56:31 +00:00
beard%netscape.com e863459fb5 added debugger.cpp/h. 2000-04-30 14:55:51 +00:00
beard%netscape.com a5df22b0a6 Removed setGlobalObject(), as only the interpreter should be mucking with it after initial creation. Added getWorld(), made getICode() out of line, removed mICode since it's part of Activation record. 2000-04-29 14:44:42 +00:00
beard%netscape.com 7d9e844cad Implemented WITHIN, WITHOUT instructions, removed mICode from Context since it's part of Activation. No longer deleteing mActivation, just clearing it, since Activation objects are garbage collected. 2000-04-29 14:43:36 +00:00
beard%netscape.com b6d49c9fe0 Added JSScope::getParent(). 2000-04-29 14:39:50 +00:00
beard%netscape.com 6f9510ebc6 JSNamespace -> JSScope. 2000-04-29 14:14:28 +00:00
beard%netscape.com e9c3fbc2e1 JSValue::operator==(const JSValue&) 2000-04-29 14:13:43 +00:00
beard%netscape.com 6d66e9ffb3 Added JSValue::operator==(const JSValue&), renamed JSNamespace JSScope. 2000-04-29 14:13:08 +00:00
beard%netscape.com 50f1660869 moved kUndefinedValue to jstypes.cpp, where it belongs. 2000-04-29 14:11:27 +00:00
beard%netscape.com 9a9f6ba249 added WITHIN, WITHOUT instructions. 2000-04-29 14:10:53 +00:00
beard%netscape.com 3eed137323 fixing windows bustage. 2000-04-29 00:29:56 +00:00
rginda%netscape.com 522d51c5b6 somewhat weak debugger console hookup.
build shouldn't *look* different yet.

Moved Context::interpret() local vars into Context private, added accessors for
stuff, using JavaScript::Lexer to lex debugger commands.

Fixed sign comparison warning in icg.cpp
2000-04-29 00:23:06 +00:00
beard%netscape.com 4a8f41d458 Added jstypes.cpp 2000-04-28 23:10:06 +00:00
beard%netscape.com 1f0e341d77 Merged JSMap & JSObject. Introduced JSNamespace. 2000-04-28 23:04:43 +00:00
rginda%netscape.com a41de8f590 80 column nit picked, comment fixed 2000-04-28 15:32:54 +00:00
beard%netscape.com aec49c3ae8 Don't print BRANCH operands. 2000-04-28 13:46:01 +00:00
beard%netscape.com 34189b3459 tightened up spacing in printOperands(), changed GenericBranch.printOperands() to conditionally print condition register contents. 2000-04-28 13:44:59 +00:00
beard%netscape.com f4ae9c632f tightened up spacing in printOperands(). 2000-04-28 13:43:49 +00:00
beard%netscape.com 74ffb17601 Added Tracer to testFunctionCall(). 2000-04-28 13:31:39 +00:00
beard%netscape.com 0be964c389 const ArgList& makes gcc happy. 2000-04-28 13:25:57 +00:00
beard%netscape.com 0a05625ba6 Added jstypes.o 2000-04-28 13:25:24 +00:00
beard%netscape.com 3583fb214c added ArgList helper struct to print Call operands, regenerated printOperands() methods to reduce warnings. 2000-04-28 13:20:26 +00:00
beard%netscape.com b790669bbc operator<< (Formatter& f, ArgList& al) 2000-04-28 13:18:03 +00:00
beard%netscape.com 9252fe2e66 support for printing ArgLists. 2000-04-28 13:17:35 +00:00
beard%netscape.com 63bdc966ee Unused. 2000-04-28 13:16:23 +00:00
beard%netscape.com 5416b79b52 regenerated dependencies 2000-04-28 05:46:22 +00:00
beard%netscape.com 905703a8f3 tracing now prints instruction operands. 2000-04-28 05:44:38 +00:00
beard%netscape.com 74a712cb16 using JSValue::tag to do simple operand validation. 2000-04-28 05:43:33 +00:00
beard%netscape.com 0738cd6cd1 forward declaring ICodeModule, to break circularity. JSValue is now a tagged union. 2000-04-28 05:42:46 +00:00
beard%netscape.com ea344e71ab Instruction::count(), Instruction::printOperands(), plus newly generated instruction classes. 2000-04-28 05:41:54 +00:00
beard%netscape.com d175bc97b6 added jstypes.cpp 2000-04-28 05:40:42 +00:00
beard%netscape.com ca3c76a044 operator<<(Formatter&, const JSValue&) 2000-04-28 05:40:16 +00:00
beard%netscape.com 554a69c801 generates printOperands() 2000-04-28 05:39:27 +00:00
beard%netscape.com f9b2ea4212 runs gencode.pl with MW Perl. 2000-04-28 05:39:04 +00:00
waldemar%netscape.com a1e085023c Changed attributes and 'language' statement syntax, added interfaces, and removed ^*, ^?, |*, and |?. 2000-04-28 02:34:14 +00:00
rginda%netscape.com ac3f62e80e don't generate print_args if super_has_print
comment fixes
2000-04-28 02:33:36 +00:00
waldemar%netscape.com a6891ee49a Changed period to dot 2000-04-28 02:31:41 +00:00
waldemar%netscape.com cee3bc879e Fixed syntax of (bottom) 2000-04-28 02:30:44 +00:00
waldemar%netscape.com 9c8cec86f9 First Checked In. 2000-04-28 02:30:19 +00:00
rginda%netscape.com 2b82c98539 moved comment so it made more sense 2000-04-28 02:26:14 +00:00
beard%netscape.com d30332fed4 reordered inheritance graph of Linkage. 2000-04-28 02:23:08 +00:00
rginda%netscape.com 4f2ea173c2 printarg stubbed out 2000-04-28 02:20:23 +00:00
beard%netscape.com 6b94a5aefc testProto() 2000-04-28 01:43:03 +00:00
rogerl%netscape.com f399ef5301 try/catch exercise changes 2000-04-28 00:11:18 +00:00
rogerl%netscape.com 7b1fe9f1b1 fixed bad constructor thing. 2000-04-28 00:10:22 +00:00
rogerl%netscape.com d96a9a02a4 More exception handling handling. 2000-04-27 01:27:09 +00:00
beard%netscape.com fec4f17019 oops. 2000-04-26 22:10:20 +00:00
beard%netscape.com 328d338eaf removed JSMap::operator[], added set/getPrototype(). 2000-04-26 22:06:17 +00:00
beard%netscape.com 8ec53e3c09 oops getProperty() can't be const unless map.find() is used everywhere. 2000-04-26 21:48:04 +00:00
beard%netscape.com 4fb22b1f43 Using getProperty/setProperty rather than JSMap::operator[]. This follows the prototype chain. 2000-04-26 21:38:14 +00:00
beard%netscape.com 3610f211ce added JSMap::setProperty()/getProperty(), and a prototype field. 2000-04-26 21:27:44 +00:00
rginda%netscape.com db9c7f1a2a initial add of debugger vapors 2000-04-26 06:04:02 +00:00
beard%netscape.com 3b3617a676 Fixing windows bustage in Linkage. 2000-04-26 05:56:20 +00:00
beard%netscape.com c9140f3cfb fixing bug: js2.cpp:328: Internal compiler error in scope_die_for, at dwarf2out.c:7794 Please submit a full bug report. See <URL:http://www.gnu.org/software/gcc/faq.html#bugreport> for instructions. 2000-04-26 05:43:24 +00:00
beard%netscape.com 4d54a513ae testFactorial() now installs a Context::Listener to trace execution. 2000-04-26 05:37:00 +00:00
beard%netscape.com 4996f07b77 JSActivation -> Activation, JSLinkage --> Linkage. Linkage now implements the Context::Frame interface. Implemented simple Context::Listener support. 2000-04-26 05:35:07 +00:00
beard%netscape.com 31c7fe60f7 Added Context::Frame, Context::Listener abstract classes. Initial support for debugger. 2000-04-26 05:29:35 +00:00
beard%netscape.com 51b10bdffb JSFrame -> JSLinkage, using explicit linked list rather than a stack. 2000-04-26 01:42:00 +00:00
beard%netscape.com 14e2fadb8c removed intentionally private JSActivation/JSFrame types. The debugger should be able to ask questions of the interpreter to obtain this information. 2000-04-26 01:39:56 +00:00
beard%netscape.com b33c70b006 changed Context constructor to take JSObject* not JSObject&, to be able to control lifetime a little more carefully. 2000-04-25 03:32:53 +00:00
beard%netscape.com 02525db2ed warning removal 2000-04-25 03:28:41 +00:00
beard%netscape.com 1bc1bc77d5 fixing mac bustage (we do reference argc/argv, to initialize them to something sensible). 2000-04-25 02:58:30 +00:00
beard%netscape.com 88208308b6 renamed not() -> complement() (not is a keyword in C++), implemented complement(). 2000-04-25 02:55:08 +00:00
rogerl%netscape.com 43a5e02de9 Fixes for handling missing params. 2000-04-24 22:40:53 +00:00
rginda%netscape.com cdf10d48f2 adding comments 2000-04-24 21:43:49 +00:00
rginda%netscape.com 9366e18dd5 NotARegister check in GenericBranch::print() 2000-04-24 20:08:16 +00:00
rginda%netscape.com 9c545008e5 quieting linux warnings 2000-04-24 18:41:05 +00:00
rogerl%netscape.com adfcfe0dca Added a beginning for exception handling. 2000-04-21 22:52:52 +00:00
rogerl%netscape.com 4683e4c869 oops 2000-04-21 00:46:48 +00:00
rogerl%netscape.com 8c81be5a55 Added labelled statements, fixed some VC++'isms 2000-04-21 00:37:51 +00:00
rginda%netscape.com 6ceaff6eaf icodegenerator.cpp
add m prefix to base and offset label members

interpreter.cpp,h
dual license
wrap interpret in a Context class
add RETURN_VOID case

js2.cpp
update to use context class
remove #if 0 code that'll probably never be used anyway.

jstypes.h
add defineProperty/function to JSObject

vmtypes.h
regerated opcode classes:
  added RETURN_VOID, removed LOAD/SAVE_VAR
  reverted bacl to the smaller print function (thanks to RETURN_VOID)
  fixed branch printing issue
  inherit print() from super if possible

tools/gencode.pl
generate smaller print functions again
don't generate print function if superclass can take care of it.
2000-04-21 00:04:14 +00:00
beard%netscape.com 45f08249f7 Simple dependency tracking with make depend target. 2000-04-20 23:02:19 +00:00
beard%netscape.com d40f4c7499 Simple dependencies list. Rebuilt with make depend target. 2000-04-20 22:58:23 +00:00
beard%netscape.com 40022cf8f5 removed extraneous semi-colons after namespace declarations. 2000-04-20 06:20:31 +00:00
beard%netscape.com 7279428cf8 warnings: commented out unused parameter name. 2000-04-20 06:19:43 +00:00
rogerl%netscape.com 07efe443fa Removing variables. 2000-04-19 22:45:57 +00:00
rogerl%netscape.com 2beda190e7 Began moving away from variables, fixed compare/branch ordering.
Testcases working.
2000-04-19 02:09:06 +00:00
rginda%netscape.com 4308ea7ed1 formatting changes. use only one tab regardless of nested namespaces 2000-04-18 21:51:45 +00:00
rginda%netscape.com 6d135f273c removed superfluous ;s after namespace decs. 2000-04-18 07:14:49 +00:00
rginda%netscape.com 12509b464c regenerated opcode classes after grncode.pl changes 2000-04-18 07:06:25 +00:00
rginda%netscape.com ad7e72b179 modified to print R~ if NotARegister 2000-04-18 07:04:24 +00:00
rogerl%netscape.com ef88b04ba2 added '(' for RegisterList output 2000-04-18 01:46:32 +00:00
rginda%netscape.com c156b65e07 regenerated opcodenames to include padding, added label printing back into icg::print 2000-04-18 01:31:24 +00:00
rginda%netscape.com a74abe59c8 space out opcodenames array 2000-04-18 01:19:12 +00:00
beard%netscape.com f51bb4d1d9 std::pair 2000-04-18 00:52:07 +00:00
beard%netscape.com cbc85867b4 moved initConsole() out to :: namespace. 2000-04-18 00:51:53 +00:00
beard%netscape.com a45402c371 added vmtypes.h,.cpp 2000-04-18 00:50:58 +00:00
rogerl%netscape.com f14edea523 added vmtypes/jstypes 2000-04-18 00:46:18 +00:00
rogerl%netscape.com 8812cb41bd Fixed WINDOZE build issues 2000-04-18 00:38:26 +00:00
rginda%netscape.com 0d5e50344a initial add of perl script to generate icode classes 2000-04-18 00:22:51 +00:00
rginda%netscape.com 17ec7b0f1a removing bogus file 2000-04-18 00:20:10 +00:00
rginda%netscape.com 501e880dcc adding files for namespace change 2000-04-18 00:19:09 +00:00
rginda%netscape.com f8d4b9c989 added js::VM, ICG, JSTypes, and Interpreter namespaces; messed around with lots of code.
Created class for each ICode, adding a print() method (using formatters)
2000-04-18 00:17:34 +00:00
beard%netscape.com 8cdd6bce1b FASTLOCK changes. 2000-04-17 23:58:28 +00:00
beard%netscape.com 2abecb9b3f gc_base now used as common base class of GC allocated objects. 2000-04-13 04:54:41 +00:00
beard%netscape.com 3ee95dbd9c added gc_base, which defines a more generic operator new(). 2000-04-13 04:53:56 +00:00
beard%netscape.com a011ebff90 builds gc 2000-04-13 00:37:00 +00:00
beard%netscape.com 926ba002f5 Added gc_allocator.h to project and gc.lib to link against. 2000-04-13 00:28:40 +00:00
beard%netscape.com f1a26f0ae3 linking in gc.lib from ../../gc/boehm 2000-04-13 00:16:58 +00:00
beard%netscape.com 129ddf18e9 enabling GC on all platforms 2000-04-13 00:14:23 +00:00
beard%netscape.com 8aba8b4d32 JSActivation, JSFunction 2000-04-11 05:11:58 +00:00
beard%netscape.com 755c2cebf9 Added JSFunction, defineFunction() 2000-04-11 05:10:40 +00:00
beard%netscape.com 43a8442f14 defineFunction, added assert 2000-04-11 05:09:38 +00:00
beard%netscape.com a1e930178f _Charalloc, deallocate(void*) for _WIN32 only 2000-04-11 04:55:27 +00:00
beard%netscape.com 38c0d29748 defineGlobalProperty 2000-04-11 03:11:47 +00:00
beard%netscape.com 61caef62db JSObject, JSArray : public JSMap, gc_object<T>. Frame -> JSFrame. Added JSFrameStack which is an std:stack<JSFrame*, std:vector<JSFrame*> >. 2000-04-11 03:11:00 +00:00
beard%netscape.com 7683394fc6 use gc_allocator<T> everywhere, addGlobalProperty -> defineGlobalProperty 2000-04-11 03:07:39 +00:00
beard%netscape.com bf940ffbab removed commented out GET_PROP/SET_PROP. 2000-04-11 02:59:52 +00:00
beard%netscape.com 4ca0198d48 added gc_object. 2000-04-11 02:59:14 +00:00
beard%netscape.com bbffbab18d fixing an assert and warnings 2000-04-11 01:10:26 +00:00
rogerl%netscape.com bb3a13555c CALL opcode & frames etc. (r=beard) 2000-04-11 00:32:17 +00:00
waldemar%netscape.com 4e0864d1c2 Fixed delete/delete[] mismatch 2000-04-10 22:23:17 +00:00
waldemar%netscape.com 58dd2238a6 Fixed memory leak 2000-04-10 22:20:00 +00:00
beard%netscape.com 717ab59840 Fixed warnings about member initializers on Linux. Whatever. 2000-04-08 04:49:41 +00:00
beard%netscape.com 513caa886a Reduced size of args arrays to minimum. 2000-04-08 04:41:19 +00:00
beard%netscape.com 207529a65d Reordered parameters to getProperty()/setProperty() to be consistent with operand ordering. Added array allocation/indexing to testObjects(). 2000-04-08 04:15:02 +00:00
beard%netscape.com 65f51d1dc0 JSArray::elements(1), operator[](const JSValue&), fixed register-indexing. 2000-04-08 04:12:28 +00:00
beard%netscape.com 654a3c2f25 Fixed NEW_ARRAY, GET_ELEMENT, SET_ELEMENT printing., 2000-04-08 04:11:16 +00:00
beard%netscape.com baed85e41a NEW_ARRAY 2000-04-08 03:37:49 +00:00
beard%netscape.com 3a59608302 Reordered GetProp/SetProp operands to base, name. Added NewArray, GetElement, SetElement instructions. 2000-04-08 03:37:18 +00:00
beard%netscape.com 5834a20d81 added JSArray, GET_ELEMENT, SET_ELEMENT, changed some ops to dest/src. 2000-04-08 03:23:44 +00:00
beard%netscape.com fffdece17c added JSArray, comments. 2000-04-08 02:44:34 +00:00
beard%netscape.com eecdd6e6fb Changed boilerplate, chmod -x 2000-04-08 02:29:07 +00:00
beard%netscape.com bd9723a414 converted NotALabel to an enum, so it obeys proper scoping rules. 2000-04-08 02:25:37 +00:00
rogerl%netscape.com 5071a48e76 added interpreter & icodegenerator 2000-04-08 01:09:50 +00:00
rogerl%netscape.com 3e3b3e45fd Fixed wacky tabs 2000-04-08 01:08:01 +00:00
rogerl%netscape.com 4898874939 Added ICodeModule to collect extra info about executable chunks. 2000-04-08 01:04:55 +00:00
beard%netscape.com 365dd176a7 fixed LoadImmediate. 2000-04-08 00:57:28 +00:00
beard%netscape.com 13179cd572 reindented, introduced gc_map_allocator to hide platform differences 2000-04-08 00:52:59 +00:00
beard%netscape.com cd69e46bec conforming to MSVC++ allocators 2000-04-08 00:48:13 +00:00
rogerl%netscape.com adb5b77071 Re-ordered instructions so destination is always first.
Changed labels to be struct * instead of ints.
2000-04-07 22:19:36 +00:00
rogerl%netscape.com 748a0de92d fix invalid return in GC_free for win32 build 2000-04-07 21:58:33 +00:00
rginda%netscape.com 0bc7ecc593 #if out references to std::iterator to get gcc to compile 2000-04-07 21:11:40 +00:00
beard%netscape.com 545dc2fc59 printing code in testObjects(). 2000-04-07 04:59:57 +00:00
beard%netscape.com 8a93b77fcd added code to print SAVE_NAME, NEW_OBJECT, GET_PROP, and SET_PROP iCodes. 2000-04-07 04:58:58 +00:00
beard%netscape.com 0679b2e1cf JSObject and its elements now allocated using gc_allocator<T> (XP_MAC only). 2000-04-07 04:39:50 +00:00
beard%netscape.com abdc92ce96 JSValues now using gc_allocator (XP_MAC only for now). 2000-04-07 04:38:18 +00:00
beard%netscape.com 1ec7e291c8 added gc library. 2000-04-07 04:36:38 +00:00
beard%netscape.com eb84a5964f prebuilt gc library for bootstrapping. 2000-04-07 04:35:14 +00:00
beard%netscape.com 34e5ea1801 added stub implementations of GC entry points. 2000-04-07 04:00:21 +00:00
beard%netscape.com 28357888da added failed gc_rebind, for future compilers to ponder. 2000-04-07 03:11:38 +00:00
beard%netscape.com dee4064778 duh, can't use wide string constants on Linux 2000-04-07 03:08:20 +00:00
beard%netscape.com deb19d6e30 XP_MAC: no longer auto close upon exit (so we can see asserts, etc.). Renamed testInterpreter() to testFactorial(). Added testObjects(), which allocates an object, stores it in the global variable "global", assigns 0.0 to "global.counter", and finally defines a function "increment" which adds 1.0 to "global.counter" each time it is called. 2000-04-07 02:58:01 +00:00
beard%netscape.com 5e0d72e3ce Added preliminary object representation class JSObject, which is simply an STL map<String, JSValue> for now. Changed static globals to be a JSObject (can you say scope chain?). Implemented NEW_OBJECT, GET_PROP, and SET_PROP, all in terms of operations provided by JSObject. No GC (yet). 2000-04-07 02:52:07 +00:00
beard%netscape.com 82ea502a7c added forward declaration to class JSObject, and changed void* JSValue.ref to JSObject* JSValue.obj. 2000-04-07 02:47:53 +00:00
beard%netscape.com 1c75ce0fa0 fix calls to template superclass for gcc 2000-04-07 02:45:33 +00:00
beard%netscape.com ec6420f75b added NEW_OBJECT instruction. unified typedef GetProp, SetProp. changed typedef Return to class Return, added class NewObject. These classes automatically pass their opcode to their base-class, and look better in the debugger. Added a virtual destructor to Instruction() #ifdef DEBUG. Added newObject(), saveName() and setProperty() methods to ICodeGenerator. 2000-04-07 02:41:21 +00:00
beard%netscape.com b40caf2ec9 added newObject(), saveName() and setProperty(). 2000-04-07 02:41:08 +00:00
waldemar%netscape.com 5e1e49d9bb Worked around Visual C++ bugs 2000-04-07 00:47:39 +00:00
beard%netscape.com cd193318c5 needed to qualify isFieldKind 2000-04-07 00:24:42 +00:00
beard%netscape.com cddbf0e5ec adding int to printCharBufferSize 2000-04-07 00:23:33 +00:00
waldemar%netscape.com c039ba6036 Fixed Mac MPW build 2000-04-07 00:06:05 +00:00
waldemar%netscape.com 7c8bcb9a14 Made Mac MPW js2 tool work 2000-04-07 00:05:23 +00:00
waldemar%netscape.com e92d0084eb Added Buffer, BitSet, and implemented Formatters for output 2000-04-06 23:48:05 +00:00
waldemar%netscape.com 6e1ee07def Implemented Formatters for output 2000-04-06 23:47:33 +00:00
waldemar%netscape.com 8cc02a37b8 Implemented Formatters for output and added parseMember 2000-04-06 23:45:58 +00:00
waldemar%netscape.com cd3fd34095 Fixed syntax errors 2000-04-06 23:43:08 +00:00
waldemar%netscape.com 52080f6c74 Commented out syntax error 2000-04-06 23:40:47 +00:00
rogerl%netscape.com 7741726bd9 Changed compare/branch handling to determine last compare opcode.
Made returnStatement a member in ICG.
2000-04-06 22:40:17 +00:00
rginda%netscape.com 331f034b21 remove +x mode.
Not part of the default build.
2000-04-06 20:27:22 +00:00
beard%netscape.com 774881879c Added interpreter.o to build of js2. 2000-04-06 03:05:12 +00:00
beard%netscape.com 580c9ba5d4 cases for SUBTRACT, MULTIPLY, DIVIDE in print(). 2000-04-06 03:02:24 +00:00
beard%netscape.com e6900034ca added testInterpreter(), which computes factorial using iCode (woo hoo!) 2000-04-06 02:59:16 +00:00
beard%netscape.com fb68200586 more arithmetic, conditional branches, return instruction. 2000-04-06 02:58:22 +00:00
beard%netscape.com c94d749d3f added new instructions, SUBTRACT, MULTIPLY, DIVICE, BRANCH_*, and RETURN. Changed LoadVar/SaveVar to have uint32 operand. Added optional paramter branchOp to ICodeGenerator::branchConditional() & endWhileExpression() to parametrize branch kind. Added complete(Register) to generate a RETURN instruction. 2000-04-06 02:57:42 +00:00
beard%netscape.com 22f7ad270e added a ref field, changed default constructor to initialize f64. 2000-04-06 02:52:51 +00:00
rogerl%netscape.com a43377758b Resolved branch targets 2000-04-06 00:04:11 +00:00
beard%netscape.com bb3c0f54a0 removed usage of labels (duh) 2000-04-05 23:57:51 +00:00
rogerl%netscape.com 0e8b29460c typedef'd instructions 2000-04-05 23:41:58 +00:00
beard%netscape.com f1fef2ea55 Added default case to avoid warning 2000-04-05 21:26:01 +00:00
beard%netscape.com f8999eeb8f added "globals", labels parameter for branches, combined some Instruction_N<> typedefs. 2000-04-05 20:33:41 +00:00
beard%netscape.com 3e4629d808 added labels parameter. 2000-04-05 20:29:09 +00:00
beard%netscape.com fab870daa5 added Instruction::opcode(), and Instruction_N::oN(), and ICodeGenerator::getLabels(). 2000-04-05 20:28:17 +00:00
beard%netscape.com 1e6377ccaa moved declaration of lgBasicAlignment & basicAlignment inside the include guard. 2000-04-05 20:26:49 +00:00
rogerl%netscape.com 7925e76257 added missing semi in win32 case 2000-04-05 18:20:02 +00:00
beard%netscape.com 6e3b668298 added interpreter.cpp/.h 2000-04-05 18:06:04 +00:00
beard%netscape.com d9f7558a70 linux fixes 2000-04-05 06:10:53 +00:00
beard%netscape.com 8283b89064 first crack at an icode interpreter 2000-04-05 06:05:57 +00:00
beard%netscape.com 0b18dd168a turned off '\n' -> '\r' mapping 2000-04-05 04:25:51 +00:00
beard%netscape.com a8127fa669 backed out "fix" (thanks waldemar) 2000-04-05 04:24:19 +00:00
beard%netscape.com 1da98657a9 removed newline mapping code (instead using compiler mapping of '\n' to '\r' in literals, which should do the right thing). 2000-04-05 03:57:57 +00:00
beard%netscape.com a1c47ffba5 added JS2MPW target (non-debug), converted MPW targets to do newline mapping (rather than using explicit override functions). 2000-04-05 03:56:34 +00:00
beard%netscape.com 561078ba6b removed DEBUG 2000-04-05 03:54:46 +00:00
beard%netscape.com 7b9a3a6d76 debug prefix for MPW tool. 2000-04-05 03:54:30 +00:00
beard%netscape.com 75fe46e792 now using gc_container<T>. 2000-04-05 02:05:12 +00:00
beard%netscape.com 200888085c convenience container types that use the GC_allocator. 2000-04-05 02:03:03 +00:00
beard%netscape.com 39293204c1 added a comment. 2000-04-05 01:55:14 +00:00
beard%netscape.com cf49d1a5d6 making icode generation test not mutually exclusive with the REPL. 2000-04-05 00:52:47 +00:00
beard%netscape.com dde290c866 changed to use locally built gc.o library. 2000-04-05 00:50:59 +00:00
beard%netscape.com 2dec354876 gc configuration file. 2000-04-05 00:50:32 +00:00
beard%netscape.com a5aa982d30 local project to build the gc itself. 2000-04-05 00:50:01 +00:00