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

274 Коммитов

Автор SHA1 Сообщение Дата
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
beard%netscape.com a8a9242fac Fixing linux build: needed <algorithm> and stub implementations of parseMember, parseNonAssignmentExpression, paraseAssignmentExpression and parseExpression. 2000-04-04 23:58:30 +00:00
waldemar%netscape.com 428084c741 Updated for lexer changes 2000-04-04 21:43:28 +00:00
waldemar%netscape.com 7170168e24 Added insertChars, removed SourcePosition, and reorganized Exception class 2000-04-04 21:42:39 +00:00
waldemar%netscape.com b620a17caf Added postfix expression parsing. Simplified Reader. 2000-04-04 21:39:59 +00:00
waldemar%netscape.com ac3d51ea23 Updated sprintf call 2000-04-04 21:38:53 +00:00
waldemar%netscape.com 143e65e71e Updated lexer API 2000-04-04 21:38:25 +00:00
waldemar%netscape.com 2b53fb6a68 Reordered files 2000-04-04 21:37:20 +00:00
waldemar%netscape.com cc9ba4e5b0 Fixed syntax errors 2000-04-04 21:36:57 +00:00
rogerl%netscape.com fcd2e813a5 cleaning up the codestate classes; continue labels 2000-04-04 01:48:35 +00:00
rogerl%netscape.com b8da7521e4 For statements. 2000-04-01 02:53:16 +00:00
rogerl%netscape.com f4b33493b8 Added do & switch statements, more hacking at the code state thing. 2000-04-01 01:30:32 +00:00
beard%netscape.com dff6633c76 fixing a broken header. 2000-03-31 05:47:42 +00:00
rogerl%netscape.com 820c2dd375 Changes to CodeState thing, still not happy with this - RTTI would be
better?
2000-03-31 01:54:28 +00:00
beard%netscape.com 8d72166d5d making icodegenerator work on Linux 2000-03-31 00:42:25 +00:00
beard%netscape.com 5894b78c53 added icodegenerator.cpp 2000-03-31 00:09:24 +00:00
rogerl%netscape.com a0dcea4077 Test driver for icg in main, just a temporary thing 2000-03-29 19:24:07 +00:00
rogerl%netscape.com 98ade2a277 First hack at some icode generation. 2000-03-29 19:19:23 +00:00
waldemar%netscape.com bc5679269d Made ifdef _WIN32 uniform 2000-03-22 00:52:06 +00:00
beard%netscape.com 3578deece1 Added gctest target, added -lm to get floor() 2000-03-09 02:11:52 +00:00
beard%netscape.com f890b439c5 oops, commented out gc_types<T>::string. 2000-03-09 01:44:35 +00:00
beard%netscape.com 5f33cd841d g++ doesn't provide numeric_limits<T> 2000-03-09 01:35:53 +00:00
beard%netscape.com 52c6a7f379 Cleaning up for GCC 2000-03-09 01:34:57 +00:00
beard%netscape.com 83b2bf90b7 more tests, using safer auto_ptr. 2000-03-07 01:21:53 +00:00
beard%netscape.com 8875ed1f5c can't use operator new to allocate containers that use GC_allocator, because the Mac heap zone isn't scanned. 2000-03-02 21:06:36 +00:00
beard%netscape.com e6d16f593a added gc_traits_finalizable to use GC finalization facilities to call destructors. 2000-03-02 20:58:26 +00:00
waldemar%netscape.com a07f1abdee *** empty log message *** 2000-03-02 03:46:10 +00:00
waldemar%netscape.com 3abb50f20b Workarounds for VC6 bugs 2000-03-02 03:43:40 +00:00
waldemar%netscape.com 5afe7c41b7 Added parser output classes 2000-03-01 07:00:31 +00:00
waldemar%netscape.com cc161a3dad Added linked list and arena destructor utilities 2000-03-01 07:00:05 +00:00
beard%netscape.com 6a76191c91 gc_traits used to control whether a type is allocated using GC_malloc vs. GC_malloc_atomic. 2000-02-29 16:03:24 +00:00
beard%netscape.com c2f0490a2b gc_allocator test 2000-02-29 16:01:57 +00:00
beard%netscape.com 5748379d82 allocator for garbage collection 2000-02-29 01:48:02 +00:00
waldemar%netscape.com 0fca92837a Work on adding parser 2000-02-23 01:54:30 +00:00
waldemar%netscape.com fdd3317995 Added .h files to project 2000-02-23 01:53:08 +00:00
waldemar%netscape.com aa5e162709 Fixed non-DEBUG warning 2000-02-23 01:51:44 +00:00
waldemar%netscape.com 1385512113 Added arenas 2000-02-23 01:40:48 +00:00
waldemar%netscape.com db41e85aa9 Backed out extraneous change 2000-02-21 19:52:47 +00:00