deanm@chromium.org [Fri, 19 Sep 2008 11:31:02 +0000 (11:31 +0000)]
Don't try an indexOf() when the search string is bigger than the string. The current code will spend a bunch of time trying to match, even though we should know a match is impossible.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@348
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
deanm@chromium.org [Fri, 19 Sep 2008 11:06:35 +0000 (11:06 +0000)]
TryFlatten is inlined, while Flatten is not. Make an optimization to avoid the call to Flatten when we're already flat. This gives me 5% on some simple indexOf experiments.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@347
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Fri, 19 Sep 2008 10:10:21 +0000 (10:10 +0000)]
Add assembler.h the the Visual Studio project file.
Review URL: http://codereview.chromium.org/2985
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@346
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Thu, 18 Sep 2008 13:42:39 +0000 (13:42 +0000)]
Fix lint issues.
Review URL: http://codereview.chromium.org/3144
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@344
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Thu, 18 Sep 2008 11:59:55 +0000 (11:59 +0000)]
Added fast-case for switch statement where all lables are constant Smi's in a limited range (IA32 only so far).
Implemented using a jump-table, for constant time lookup.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@343
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Thu, 18 Sep 2008 11:18:27 +0000 (11:18 +0000)]
Use null instead of undefined for deleted elements in code caches.
Update the lookup and update code for code caches to deal with deleted
elements.
Do not clear the code cache for the builtins object. If there was a
matching element in the code cache, we would have hit the monomorphic
prototype failure case and removed it.
Review URL: http://codereview.chromium.org/3140
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@340
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Thu, 18 Sep 2008 10:40:25 +0000 (10:40 +0000)]
Fix ARM build by adding a dummy last_statement_position() accessor
to the assembler.
Review URL: http://codereview.chromium.org/2961
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@339
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Thu, 18 Sep 2008 10:22:46 +0000 (10:22 +0000)]
Revert revision 331. The propagation of monomorphic prototype failure
information does not work. In certains situations, it will keep
alternating between unrelated monomorphic states instead of going
megamorphic.
Review URL: http://codereview.chromium.org/2959
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@338
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Thu, 18 Sep 2008 10:15:17 +0000 (10:15 +0000)]
Revert changes to src\assembler-arm.h which slipped into a previous checkin breaking the ARM build.
Review URL: http://codereview.chromium.org/2958
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@337
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Thu, 18 Sep 2008 08:51:43 +0000 (08:51 +0000)]
Defer the writing of the source position data to the relocation information
until a possible debug break location is reached. Currently this is call sites
with calls to code objects and JS return. Source position information in the
code therefore no longer refers to the "first" instruction generated for a
given source position (which was not the case defered code anyway) but to the
first break location after that source position was passed (again defered code
always start with source position information). This doesn't make a difference
for the debugger as it will always be stopped only at debug break locations.
However, this makes the life of the peep-hole optimizer much easier as many
oportunities for posh/pop eliminations where previosly blocked by relocation
information already written to the code object.
Two types of source positions are still collected. Statement positions indicate
the position of the start of the statement leading to this code and (plain)
positions indicate other places typically call sites to help indicate current
position in backtraces. The two different types of positions are also used to
distinguish between step next and step in.
Runs all the tests (including debugger tests) as before.
Moved the checking for the FLAG_debug_info to one place.
I will do the same changes to the ARM codegenerator in a seperate changelist.
Review URL: http://codereview.chromium.org/2957
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@335
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Thu, 18 Sep 2008 08:29:06 +0000 (08:29 +0000)]
Remove unused codereview.settings file.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@334
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
whessev8 [Thu, 18 Sep 2008 07:31:37 +0000 (07:31 +0000)]
Flush the runtime %DebugPrint output. Should have no performance impact,
since %DebugPrint is not often used. Needed for some performance testing
statistics outputting.
Fix the declaration of descriptor enumerated constants to be more readable.
Review URL: http://codereview.chromium.org/3100
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@332
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Thu, 18 Sep 2008 06:55:14 +0000 (06:55 +0000)]
Propagate the information that a monomorphic prototype failure has
occured. After a monomorphic prototype failure has been detected,
other monomorphic inline caches for the same type will have a code
object in the map's code cache which is not the current target. We
recognize this case and use the code object that is in the cache
instead of going megamorphic.
Review URL: http://codereview.chromium.org/2928
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@331
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Wed, 17 Sep 2008 13:56:12 +0000 (13:56 +0000)]
Update version string and ChangeLog; we're now working on
version 0.3.3.
Review URL: http://codereview.chromium.org/3101
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@328
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Wed, 17 Sep 2008 12:38:50 +0000 (12:38 +0000)]
Changed the disassembler formatting
Changed the formatting of the comment in the disassembler output to contain
more information on code targets.
Review URL: http://codereview.chromium.org/3099
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@327
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Wed, 17 Sep 2008 10:59:19 +0000 (10:59 +0000)]
Move the initial code space to be before the young space instead of after it.
The old arrangement meant that the alignment requirements of young space were
likely to nullify ASLR.
Review URL: http://codereview.chromium.org/2925
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@326
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Wed, 17 Sep 2008 10:58:45 +0000 (10:58 +0000)]
The OutOfMemory and OutOfMemoryNested tests set a heap limit that was too low.
A change in the way heap was allocated meant that the initial heap size was
sometimes not higher than the limit, which mean that the limit started having
and effect and prevented V8 from booting up.
Fixes http://code.google.com/p/v8/issues/detail?id=25
Review URL: http://codereview.chromium.org/2924
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@325
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Wed, 17 Sep 2008 10:25:05 +0000 (10:25 +0000)]
More thorough tests of sorting integers in lexicographic order.
Review URL: http://codereview.chromium.org/2923
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@324
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Wed, 17 Sep 2008 09:05:36 +0000 (09:05 +0000)]
Added missing static to returned buffer.
Review URL: http://codereview.chromium.org/3096
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@323
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Wed, 17 Sep 2008 08:47:50 +0000 (08:47 +0000)]
- Rename flags.defs to flag-definitions.h.
- Add better support for ignoring files in the presubmit tool.
Review URL: http://codereview.chromium.org/3082
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@322
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Tue, 16 Sep 2008 14:37:24 +0000 (14:37 +0000)]
Added presubmit.py to the tools tab for easier access.
TBR=mark
Review URL: http://codereview.chromium.org/2892
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@319
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Tue, 16 Sep 2008 12:41:36 +0000 (12:41 +0000)]
Only remove the code object that caused the monomorphic prototype
failure instead of clearing the cache. Clearing the cache makes us
miss subsequent monomorphic prototype failures.
Review URL: http://codereview.chromium.org/2889
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@318
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Tue, 16 Sep 2008 11:40:21 +0000 (11:40 +0000)]
Fix issue 67 by copying the receiver function one slot
down too. Also fix lint issue in codegen-arm.cc.
Reviewed offline by Ivan (iposva@chromium.org).
Review URL: http://codereview.chromium.org/3080
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@316
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Tue, 16 Sep 2008 11:23:02 +0000 (11:23 +0000)]
Fix code.google.com/p/v8/issues/detail?id=69 :
- Simplify the switch statement code generation.
- Ensure that the switch value is always popped from the stack.
Credit goes to Feng for isolating the issue and proposing a fix.
Review URL: http://codereview.chromium.org/2888
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@315
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Tue, 16 Sep 2008 10:12:32 +0000 (10:12 +0000)]
Remove the old builtins framework with the huge, nasty
macro.
Review URL: http://codereview.chromium.org/3079
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@314
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Tue, 16 Sep 2008 09:21:22 +0000 (09:21 +0000)]
Keep the inline caches for the builtins object monomorphic when
libraries are loaded lazily.
Review URL: http://codereview.chromium.org/2885
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@313
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Tue, 16 Sep 2008 07:24:46 +0000 (07:24 +0000)]
Stop adapting the arguments passed to the builtin implementations
of Array.prototype.push and Array.prototype.pop. Avoid going
through the arguments adaptor trampoline for call ICs that end
up calling a builtin that does not need arguments adaption.
Review URL: http://codereview.chromium.org/2884
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@312
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Mon, 15 Sep 2008 15:02:38 +0000 (15:02 +0000)]
Generalize the Function.prototype.call hooks in the
arguments adaptor code to allow builtins to work without
argument adaptor frames. Get rid of unused JavaScript
implementation of call and apply and the associated
code generation hooks.
Review URL: http://codereview.chromium.org/2850
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@311
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Mon, 15 Sep 2008 12:17:36 +0000 (12:17 +0000)]
Simplify logic in string-to-double conversion code.
Fast case for strings that are definitely not numbers.
Review URL: http://codereview.chromium.org/2847
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@309
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Mon, 15 Sep 2008 10:57:53 +0000 (10:57 +0000)]
Fixed broken build of mksnapshot on Windows as there was warnings against
the use of fopen. Change use of fopen to OS::FOpen to get rid of warning.
Review URL: http://codereview.chromium.org/2846
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@303
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
deanm@chromium.org [Mon, 15 Sep 2008 09:24:59 +0000 (09:24 +0000)]
Remove EOL trailing whitespace.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@302
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
deanm@chromium.org [Mon, 15 Sep 2008 08:59:31 +0000 (08:59 +0000)]
Move the Counters to structures that can be POD initialized, avoiding the need for static constructors on program startup. They were only default initializing and doing some unneeded string operations.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@301
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Fri, 12 Sep 2008 17:25:38 +0000 (17:25 +0000)]
- Add support for building the ARM simulator version of V8 to the Xcode project.
- Added new compilation-cache.[cc|h] files.
- Fixed log.cc to be able to build without ENABLE_LOGGING_AND_PROFILING defined.
The next step is to mirror the xcconfigs in a separate change.
Review URL: http://codereview.chromium.org/1948
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@300
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
deanm@chromium.org [Fri, 12 Sep 2008 12:17:33 +0000 (12:17 +0000)]
The serialization system handles some flag parsing itself, which is a bad idea. For now, update the internal strings, since they will be underbar versions in the new flag system.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@299
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
deanm@chromium.org [Fri, 12 Sep 2008 11:00:36 +0000 (11:00 +0000)]
Fix some arm related flags with the new flag system.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@298
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
deanm@chromium.org [Fri, 12 Sep 2008 10:31:37 +0000 (10:31 +0000)]
Move a few bits of mksnapshot over to the new flag system.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@297
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
deanm@chromium.org [Fri, 12 Sep 2008 10:19:33 +0000 (10:19 +0000)]
This is a new static flag system, designed to have all flags in a central place, and compiled into the binary without requiring static constructors for registration. All flags are moved out of the specific modules and into flags.defs, with different sections for debug, release, etc. The flag variables are always defined. For example, a debug flag in release mode still exists, but is read only and set to the default value.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@296
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Fri, 12 Sep 2008 08:52:22 +0000 (08:52 +0000)]
Flexo is tired, but this should perk him up. Single-argument constructors
should be marked explicit.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@295
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Fri, 12 Sep 2008 08:24:57 +0000 (08:24 +0000)]
Change the code generator state constructor to implicitly push the state on
stack, rather than explicitly saving and restoring it.
Review URL: http://codereview.chromium.org/3002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@294
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Fri, 12 Sep 2008 07:08:55 +0000 (07:08 +0000)]
Removed SCons warning flags duplication on Windows. It now uses
the same scheme as for gcc on Linux.
Review URL: http://codereview.chromium.org/2424
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@292
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Fri, 12 Sep 2008 04:59:41 +0000 (04:59 +0000)]
Satisfy lint!
TBR=nobody
Review URL: http://codereview.chromium.org/3001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@291
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Fri, 12 Sep 2008 04:31:34 +0000 (04:31 +0000)]
- Update test status file with fixed tests for ARM and add failing test tracked by issue 67.
- Remove debugging aid stop("Generate_ArgumentsAdaptorTrampoline - non-function call")
- Cleanup comment
Review URL: http://codereview.chromium.org/2801
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@290
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Fri, 12 Sep 2008 03:29:06 +0000 (03:29 +0000)]
Adapt to new calling convention on ARM:
- Simplified frame entry and frame exit code.
- Added ArgumentsAdaptorTrampoline and check for matching argument counts in the InvokePrologue.
- Removed definition and uses of USE_OLD_CALLING_CONVENTIONS.
- Changed MacroAssembler::InvokeBuiltin to match ia32 version.
- Start introducing convenience instructions in the ARM assembler as needed. These instructions take all Register parameters to avoid extra typing of "Operand(reg)".
To keep the architectures in sync these changes have been made to the ia32 files:
- Changed MacroAssembler::EnterFrame(StackFrame::Type type) to MacroAssembler::EnterInternalFrame().
These parts are still missing:
- unimplemented: Builtins::Generate_FunctionApply - large limit
- unimplemented: Builtins::Generate_ArgumentsAdaptorTrampoline - non-function call
- The files have not been lint'd yet.
Review URL: http://codereview.chromium.org/1930
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@289
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Thu, 11 Sep 2008 18:46:29 +0000 (18:46 +0000)]
Add back the CCFLAGS to the CXXFLAGS. Leaving them out caused V8 to
be build without optimization flags.
Review URL: http://codereview.chromium.org/1947
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@288
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Thu, 11 Sep 2008 16:41:19 +0000 (16:41 +0000)]
Fixed arm disassembler build problems.
Fixed lint issue in platform-macos.
Review URL: http://codereview.chromium.org/1941
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@287
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Thu, 11 Sep 2008 15:16:08 +0000 (15:16 +0000)]
Fix performace regression due to missed peephole optimization
opportunity.
Review URL: http://codereview.chromium.org/2002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@286
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Thu, 11 Sep 2008 15:03:22 +0000 (15:03 +0000)]
Fixed build problem on mac, lint issues and a test failure on win32.
Review URL: http://codereview.chromium.org/2601
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@285
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Thu, 11 Sep 2008 14:39:11 +0000 (14:39 +0000)]
Apply the flags to the SCons environment used to link the library to have the
LINKFLAGS take effect. This fixes building shared libraries on 64-bit Linux.
Removed the CCFLAGS from the CXXFLAGS for Linux as SCons combines these
automatically on Linux. This removed the duplication of flags when compiling on
Linux.
On Linux SCons defines CXXCOM as follows
'CXXCOM': '$CXX -o $TARGET -c $CXXFLAGS $CCFLAGS $_CCCOMCOM $SOURCES'
whereas on Windows it is
'CXXCOM': '$CXX $CXXFLAGS $CCCOMFLAGS'
Review URL: http://codereview.chromium.org/2422
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@284
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Thu, 11 Sep 2008 14:34:48 +0000 (14:34 +0000)]
Replaced calls to functions that msvc consider deprecated. Used
Vector<...> in more places to be sure that buffers have a length
associated with them.
Review URL: http://codereview.chromium.org/1940
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@283
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Thu, 11 Sep 2008 13:39:48 +0000 (13:39 +0000)]
Fix issue 65 by making sure not to leak any of the cache
tables when doing compilation cache operations.
Review URL: http://codereview.chromium.org/1939
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@280
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Thu, 11 Sep 2008 13:00:30 +0000 (13:00 +0000)]
Fix bug in function context slot lookup. There were two problems: we
read at the wrong index in the scope information and we forgot to add
Context::MIN_CONTEXT_SLOTS to the index.
This fixes issue 24.
Review URL: http://codereview.chromium.org/1938
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@279
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Thu, 11 Sep 2008 12:57:27 +0000 (12:57 +0000)]
Formatting fixes (e.g., whitespace at end of line)
Added in-file documentation for --log-regexp switch.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@278
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olehougaard [Thu, 11 Sep 2008 12:33:31 +0000 (12:33 +0000)]
Enabling a few tests when using snapshots.
Some of the tests that were disabled when using snapshot has been modified and reenabled.
Review URL: http://codereview.chromium.org/1937
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@277
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Thu, 11 Sep 2008 12:25:37 +0000 (12:25 +0000)]
Don't run the string resource tests threaded for now.
I'm debugging the issue and will file an issue for it.
Review URL: http://codereview.chromium.org/2419
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@276
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Thu, 11 Sep 2008 11:59:00 +0000 (11:59 +0000)]
Fixed build error on Linux.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@273
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Thu, 11 Sep 2008 11:24:45 +0000 (11:24 +0000)]
Added -log-regexp option to log all compilations and executions of regular expressions.
Slightly modified SmartPointer.
Made String.ToWideCString return a SmartPointer instead of a plain pointer.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@271
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Thu, 11 Sep 2008 10:51:52 +0000 (10:51 +0000)]
Generalized the EvalCache into a CompilationCache and enabled
it for scripts too. In the context of Chromium, this should
have a very positive impact on memory consumption for web apps
that run multiple tabs from the same domain with a lot of the
same JavaScript code.
For now, the cache retirement policy is really simple:
Whenever a mark-sweep collection is started we clear the
cache. This guarantees that this change will not have a
huge negative impact on memory consumption, but it may
not be ideal. We should consider a more sophisticated LRU
scheme.
Review URL: http://codereview.chromium.org/1933
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@270
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Thu, 11 Sep 2008 10:37:57 +0000 (10:37 +0000)]
Quick lint fix
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@269
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Thu, 11 Sep 2008 08:44:32 +0000 (08:44 +0000)]
Remove some of the state-dependent behavior from the code generator.
Simplify the code generator by eliminating the access types STORE and
INIT_CONST and delegating code generation for stores to the appropriate AST
nodes.
Review URL: http://codereview.chromium.org/1889
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@265
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Thu, 11 Sep 2008 08:42:29 +0000 (08:42 +0000)]
Update version string and ChangeLog, we are now working on version
0.3.2.
Review URL: http://codereview.chromium.org/2417
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@264
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Thu, 11 Sep 2008 08:05:45 +0000 (08:05 +0000)]
Changed the Visual Studio project files to work when V8 is checked out
to a path containing spaces.
BUG=55
Review URL: http://codereview.chromium.org/2416
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@263
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Thu, 11 Sep 2008 07:29:25 +0000 (07:29 +0000)]
Removed Message::GetStackTrace.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@262
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Thu, 11 Sep 2008 07:28:10 +0000 (07:28 +0000)]
Remove a test from threading tests that make them fail on Mac OS.
Review URL: http://codereview.chromium.org/2415
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@261
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Wed, 10 Sep 2008 14:54:15 +0000 (14:54 +0000)]
Added option for TryCatches to not capture the message object on
exceptions.
It turned out that the stack overflow fix from before had disabled
message storing in another test. Previously, stack overflows would
actually cause a message object to start being created but cause
another exception which would not be reported and that's what stopped
the infinite regress. This change resores that behavior.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@259
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Wed, 10 Sep 2008 14:03:45 +0000 (14:03 +0000)]
Fixed stack overflow crash.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@257
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Wed, 10 Sep 2008 13:05:26 +0000 (13:05 +0000)]
Quick fix: copyright header
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@255
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Wed, 10 Sep 2008 11:41:48 +0000 (11:41 +0000)]
Fixed bug #57. Introduced String::Utf8Value and replaced a bunch of
uses of String::AsciiValue with String::Utf8Value. Fixed shell sample
'load' so it doesn't print error messages.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@254
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Wed, 10 Sep 2008 11:35:05 +0000 (11:35 +0000)]
Do not shortcut cons string symbols during garbage collection.
Attempt to flatten cons strings when converting them to symbols so
that symbols will most often be flat strings.
Review URL: http://codereview.chromium.org/1700
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@253
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
whessev8 [Wed, 10 Sep 2008 10:32:33 +0000 (10:32 +0000)]
This change makes the runtime function %DebugPrint()
print the content of strings in release build, rather
than just a pointer. This lets test_shell print to stdout.
Review URL: http://codereview.chromium.org/1697
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@251
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Wed, 10 Sep 2008 09:37:34 +0000 (09:37 +0000)]
Avoid the creation of a string builder for joining one-element arrays.
Review URL: http://codereview.chromium.org/1888
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@250
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Wed, 10 Sep 2008 06:59:41 +0000 (06:59 +0000)]
Fix issue code.google.com/p/v8/issues/detail?id=58:
- Prevent a clipping of values when converting a double to an unsigned int
for use as the random generator's seed value.
Review URL: http://codereview.chromium.org/1887
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@246
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Wed, 10 Sep 2008 05:51:59 +0000 (05:51 +0000)]
Remove another case of .js in the status file. Reviewed offline by ager@chromium.org.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@244
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Tue, 9 Sep 2008 20:20:35 +0000 (20:20 +0000)]
Quick fix for mjsunit/debug-sourceinfo failure
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@243
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Tue, 9 Sep 2008 20:08:45 +0000 (20:08 +0000)]
Changed copyright header from google inc. to v8 project authors.
Added presubmit step to check copyright.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@242
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Tue, 9 Sep 2008 19:08:40 +0000 (19:08 +0000)]
Changed the shell to print source position with error messages.
Added debug flags to gcc when compiling samples in debug mode.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@237
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Tue, 9 Sep 2008 18:55:41 +0000 (18:55 +0000)]
Added source info to TryCatches. Reorganized exception messaging
somewhat and folded stack traces into message. Use of this in the
shell will follow in a separate changelist.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@235
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Tue, 9 Sep 2008 12:45:21 +0000 (12:45 +0000)]
Fixed misspelling in mjsunit status file.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@234
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Tue, 9 Sep 2008 08:40:25 +0000 (08:40 +0000)]
Use RUNTIME_ASSERT instead of CHECK in runtime.cc.
Remove unused function from array.js.
Review URL: http://codereview.chromium.org/1659
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@230
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Tue, 9 Sep 2008 08:35:40 +0000 (08:35 +0000)]
Added -f option to the shell sample for compatibility with the other
engines.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@229
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Tue, 9 Sep 2008 08:06:27 +0000 (08:06 +0000)]
Fix the debug build.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@228
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Tue, 9 Sep 2008 07:57:43 +0000 (07:57 +0000)]
Fixed issue 54, under some circumstances internal field count set on
object templates did not take effect.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@226
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Tue, 9 Sep 2008 07:38:00 +0000 (07:38 +0000)]
Move the contains check in array join from javascript to C++.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@224
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Tue, 9 Sep 2008 05:37:00 +0000 (05:37 +0000)]
Allow setting of a --simulator parameter when running tests.
Passing "--simulator=arm" has the same effect as setting
"-S simulator=arm --arch=arm" and closely mirrors the behavior
of the scons build causing less confusion when running tests.
Review URL: http://codereview.chromium.org/1654
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@221
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Tue, 9 Sep 2008 03:27:06 +0000 (03:27 +0000)]
Add support for setting the correct parameters for gcl and
http://codereview.chromium.org
Review URL: http://codereview.chromium.org/1835
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@220
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Tue, 9 Sep 2008 03:08:23 +0000 (03:08 +0000)]
Submitting a revised Xcode project for Mark Mentovai (mark@chromium.org).
Reviewed here: http://codereview.chromium.org/1833
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@219
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Mon, 8 Sep 2008 19:46:49 +0000 (19:46 +0000)]
Explain better the constraints for external string resources.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@218
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
feng@chromium.org [Mon, 8 Sep 2008 18:56:27 +0000 (18:56 +0000)]
Mark number-string-index-call.js as FAIL on ARM because it depends on the new calling convention. TBR=iposva@chromium.org
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@216
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
feng@chromium.org [Mon, 8 Sep 2008 16:47:23 +0000 (16:47 +0000)]
Fix issue code.google.com/p/v8/issues/detail?id=32
Allows numberical strings as array index and make a call. e.g.,
callbacks['0']();
Added more test case for regexp (disabled by default, requires --call_regexp)
and call_as_function object created by API.
Review URL: http://codereview.chromium.org/1604
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@214
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse [Mon, 8 Sep 2008 15:42:29 +0000 (15:42 +0000)]
Added ApplyEnvOverrides to samples build. This makes the build work on Windows
when the PATH to cl.exe is specified through env overrides. Changed explicit
EVN update with call to ApplyEnvOverrides
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@213
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Mon, 8 Sep 2008 13:08:10 +0000 (13:08 +0000)]
- Added option to set SourceSignatures in scons.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@210
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Mon, 8 Sep 2008 12:37:10 +0000 (12:37 +0000)]
Add two more Mozilla tests that depend on GC timings to the list
of flaky tests.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@205
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Mon, 8 Sep 2008 10:58:46 +0000 (10:58 +0000)]
Fix issue 40.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@202
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Mon, 8 Sep 2008 10:45:01 +0000 (10:45 +0000)]
Fixed problem where asian characters were not categorized as letters
because they were defined using different syntax in the unicode
database.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@200
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Mon, 8 Sep 2008 09:26:02 +0000 (09:26 +0000)]
Fix issues with running some of our tests with an embedded
snapshot. Changed the debug-script.js test to ignore the
exact number of extension scripts.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@199
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Mon, 8 Sep 2008 08:09:50 +0000 (08:09 +0000)]
Capitalize V8 in AUTHORS file.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@196
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Mon, 8 Sep 2008 07:58:54 +0000 (07:58 +0000)]
Fix issue 35 by applying patch by Daniel James.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@195
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Mon, 8 Sep 2008 07:55:28 +0000 (07:55 +0000)]
Update mjsunit status file. The debugger does not currently work on
ARM and all the tests are disabled for now.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@194
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Mon, 8 Sep 2008 07:24:10 +0000 (07:24 +0000)]
Fix broken build. Sorry about that.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@193
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Mon, 8 Sep 2008 07:04:22 +0000 (07:04 +0000)]
- Marked flaky windows gc test as flaky.
- Added support for --cat in test runner.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@190
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kasperl@chromium.org [Mon, 8 Sep 2008 07:01:12 +0000 (07:01 +0000)]
Fix issues 28 and 30 by changed the header guard to V8_H_ and
including HandleScope::ZapRange in release mode.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@189
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00