Commit Graph

5805 Commits

Author SHA1 Message Date
karlklose@chromium.org
6de158fc44 Do not try to execute empty programs.
After failing to read a non-existing file, the shell tried to execute the resulting empty program, which resulted in a null pointer dereference. This patch avoids execution of empty programs.

Review URL: http://codereview.chromium.org/6777005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7473 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-01 11:47:42 +00:00
vegorov@chromium.org
ae65366f0b Fix SlotRef::SlotAddress for parameters indices.
Fix %NewObjectFromBound to correctly handle optimized frames (including those with inlined functions).

Fix %_IsConstructCall handling in hydrogen: when called from inlined function return false constant directly instead of emiting HIsConstructCall.

Fix success case in TraceInline.

BUG=v8:1229
TEST=test/mjsunit/regress/regress-1229.js

Review URL: http://codereview.chromium.org/6740023

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7472 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-01 11:41:36 +00:00
danno@chromium.org
8d4303e06c Fix Win64 build isolate problem
R=ager@chromium.org
BUG=none
TEST=none

Review URL: http://codereview.chromium.org/6764014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7471 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-01 11:21:46 +00:00
vegorov@chromium.org
6153267de9 Minor cleanup in StaticMarkingVisitor.
Review URL: http://codereview.chromium.org/6780032

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7470 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-01 11:21:36 +00:00
ager@chromium.org
1528bf7240 Never use classic code generator.
Crankshaft is now the default on all platforms. This is the first
patch on the way to removing the classic code generator from the
system.

R=kmillikin@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/6771045

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7469 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-01 10:52:18 +00:00
sgjesse@chromium.org
74c2bdc3fe Fix pc offset calculation for stack traces
Use the correct address of the code object to calculate the offset from the code object start to a pc for an optimized frame.

BUG=
TEST=

Review URL: http://codereview.chromium.org//6759052

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7468 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-01 10:30:09 +00:00
antonm@chromium.org
71431d79a0 Do not create a SharedFunctionInfo for closures on each recompilation.
Unoptimized code should already keep a reference to the SharedFunctionInfo,
let's use it instead of allocating a new object and prohibiting SharedFunctionInfo
specific optimizations.

Review URL: http://codereview.chromium.org/6706016

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7467 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-01 10:20:39 +00:00
danno@chromium.org
5f2b7a0f79 Fix minor issues in typed array load/store implementation
BUG=none
TEST=none

Review URL: http://codereview.chromium.org/6675043

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7466 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-01 08:03:34 +00:00
ager@chromium.org
9eb3bfadd6 Implement %_IsStringWrapperSafeForDefaultValue in full code generators.
R=sgjesse@chromium.org

Review URL: http://codereview.chromium.org/6689006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7465 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-01 08:02:12 +00:00
ager@chromium.org
92996f027f Cleanup of Isolate::Current() and FACTORY macro usage in execution.cc.
BUG=none
TEST=none

Patch from Peter Varga <pvarga@inf.u-szeged.hu>.

Review URL: http://codereview.chromium.org/6759029

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7464 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-01 08:01:33 +00:00
mark@chromium.org
c3b761cd42 Add missing #ifdef to lithium-gap-resolver-ia32.cc. This fixes the GYP-based
64-bit Mac build.
Review URL: http://codereview.chromium.org/6728035

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7463 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-31 20:09:45 +00:00
vitalyr@chromium.org
179aef2b8f VM initialization refactoring.
This patch introduces global once per-process initialization and moves
the OS and CPU setup there. This makes CPU features isolate-independent.

Review URL: http://codereview.chromium.org/6670119

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7462 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-31 16:17:37 +00:00
whesse@chromium.org
fdd4773dfe Remove counters from generated isolate-independent MemCopy on ia32 platform.
BUG=
TEST=

Review URL: http://codereview.chromium.org/6740019

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7457 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-31 12:04:00 +00:00
erik.corry@gmail.com
bb0bb5f006 Untank build after last commit.
Review URL: http://codereview.chromium.org/6728021

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7456 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-31 11:52:51 +00:00
erik.corry@gmail.com
3e59faef0c Microoptimizations to the way we get the current heap.
Review URL: http://codereview.chromium.org/6759030

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7455 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-31 10:55:53 +00:00
fschneider@chromium.org
107d9dc518 Improve property access with keys that can always be converted into a symbol string.
Review URL: http://codereview.chromium.org/6670115

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7454 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-31 10:33:45 +00:00
lrn@chromium.org
1c57935a43 Reapply changelist r7436.
Remove test for existence of VM. Not all tests need the VM.

Review URL: http://codereview.chromium.org/6783011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7452 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-31 08:12:17 +00:00
vegorov@chromium.org
0d7b70ee22 Remove unused variable to please GCC 4.6.
Review URL: http://codereview.chromium.org/6777024

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7451 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 20:14:55 +00:00
vitalyr@chromium.org
d89c753152 Only pass isolate parameter to C helper functions that need it.
Review URL: http://codereview.chromium.org/6778018

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7450 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 18:05:16 +00:00
vegorov@chromium.org
ed36cde5d0 Autodetect no-strict-aliasing, propagate toolchain option to SCons
Patch by Bert Belder.

BUG=v8:884

Review URL: http://codereview.chromium.org/6539006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7449 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 17:33:18 +00:00
vitalyr@chromium.org
c52de3acd1 Try fix build.
TBR=slava

Review URL: http://codereview.chromium.org/6778019

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7448 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 17:19:44 +00:00
vegorov@chromium.org
5378d727a1 Fix the Cygwin build after isolates merge.
Patch by Bert Belder.

Review URL: http://codereview.chromium.org/6776011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7447 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 17:16:36 +00:00
whesse@chromium.org
1358772e3b Fix the bug in the bug fix.
BUG=
TEST=

Review URL: http://codereview.chromium.org/6731089

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7446 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 16:04:37 +00:00
whesse@chromium.org
a910a50d1e Fix unused variable bug in r7444.
BUG=
TEST=

Review URL: http://codereview.chromium.org/6759033

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7445 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 15:56:29 +00:00
whesse@chromium.org
9a46c6f919 Reduce handle usage in type-info.cc PopulateMap.
BUG=none
TEST=none

Review URL: http://codereview.chromium.org/6771008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7444 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 15:31:16 +00:00
vegorov@chromium.org
4a3b75f7ba Specialize ScavengingVisitor for the case when all logging and profiling is disabled.
By default use specialized static visitor and fallback to more generic one when one of the isolates with enabled logging/profiling hits GC.

Review URL: http://codereview.chromium.org/6777011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7443 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 15:17:10 +00:00
whesse@chromium.org
8f30d5922c Revert changelist r7436.
BUG=
TEST=

Review URL: http://codereview.chromium.org/6756036

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7442 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 14:42:47 +00:00
whesse@chromium.org
df07145543 Fix strict-aliasing violation in compilation of r7437.
BUG=
TEST=

Review URL: http://codereview.chromium.org/6765027

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7440 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 14:31:32 +00:00
vitalyr@chromium.org
a051955678 Clean up runtime functions.
Make all functions called from generated code declared using
RUNTIME_FUNCTION macro. This makes them all look consistent and allows
experimenting with various calling conventions.

Review URL: http://codereview.chromium.org/6756029

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7439 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 14:17:39 +00:00
mikhail.naganov@gmail.com
b64e85d241 Heap profiler: emit more descriptive names for system objects and properties.
BUG=none
TEST=none

Review URL: http://codereview.chromium.org/6776009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7438 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 14:04:50 +00:00
whesse@chromium.org
28323284c0 Add thread-safety to creation of MemCopy and modulo functions.
BUG=
TEST=release test-api MultipleIsolatesOnIndividualThreads on Windows X64 build.

Review URL: http://codereview.chromium.org/6777007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7437 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 14:04:26 +00:00
lrn@chromium.org
0a6d586d09 Add test suite for the preparser.
The test suite builds the preparser test program and runs it on each .js file in
the test/preparser directory.
Currently it only checks that preparsing runs without crashing or erroring.
This also implicitly tests that the preparser library can be built.

TEST=test/preparser/*.js

Review URL: http://codereview.chromium.org/6777010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7436 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 14:00:36 +00:00
mikhail.naganov@gmail.com
a8af96990b Add initialization for has_external_callback field.
It looks like we initialize TickSample values twice in some
situations, but I will fix this in a separate change list.

R=sgjesse@chromium.org
BUG=1292
TEST=none

Review URL: http://codereview.chromium.org/6756031

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7434 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 13:30:52 +00:00
vegorov@chromium.org
d919609b6a Fix a number of GC-unsafe evaluation order dependent places.
Also change places which are triggering false positive alert in our static analysis tool.
 
Review URL: http://codereview.chromium.org/6731054

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7432 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 10:46:55 +00:00
whesse@chromium.org
1e85630094 Fix another x64 compilation error due to some dead code.
BUG=v8:1286
TEST=compile V8 with gcc-4.5.x

Patch from Peter Varga <pvarga@inf.u-szeged.hu>.

Review URL: http://codereview.chromium.org/6771013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7431 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 10:38:25 +00:00
lrn@chromium.org
4e502c5e5a PreParser build fix
Patch from Peter Varga <pvarga@inf.u-szeged.hu>.

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/6773009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7430 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 10:13:11 +00:00
ager@chromium.org
5fc90eb325 Pass in isolate when reporting deletion of objects.
R=erik.corry@gmail.com

Review URL: http://codereview.chromium.org/6756021

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7429 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 09:37:26 +00:00
ager@chromium.org
5c3b422423 Fix a couple of TLS isolate accesses in mark-compact.
R=erik.corry@gmail.com

Review URL: http://codereview.chromium.org/6765023

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7426 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 08:43:02 +00:00
ager@chromium.org
d85ca084d5 Fix presubmit.
TBR=karlklose@chromium.org

Review URL: http://codereview.chromium.org/6759024

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7425 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 08:24:46 +00:00
lrn@chromium.org
a1d18a1eb7 Prepare push to trunk. Now working on version 3.2.7.
Review URL: http://codereview.chromium.org/6675039

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7424 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 08:24:29 +00:00
ager@chromium.org
d495f4934c Cleanup usage of HEAP and FACTORY in the cache stub compiler.
Review URL: http://codereview.chromium.org/6770011
Patch from Karl Klose <karlklose@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7423 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 08:18:56 +00:00
ricow@chromium.org
ecc21b991a Fix conditional on sse2 support in CompileMathFloor
We should test that there is NO sse2 support and return undefined in
that case.
Review URL: http://codereview.chromium.org/6759021

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7422 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 07:22:53 +00:00
lrn@chromium.org
15cfab8f49 Fixing build on Mac
BUG=
TEST=

Review URL: http://codereview.chromium.org/6771015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7420 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 07:00:35 +00:00
mmaly@chromium.org
610b510f86 Fix xcode build warning in shell.cc
(out of order initialization).

BUG=
TEST=

Review URL: http://codereview.chromium.org/6772021

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7419 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-30 04:36:41 +00:00
mmaly@chromium.org
01748149d2 Fix gyp files for d8 console. Include build/gyp in .gitignore.
BUG=
TEST=

Review URL: http://codereview.chromium.org/6765006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7418 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-29 17:54:44 +00:00
fschneider@chromium.org
eed6798474 Use a fixed input register where we require a byte register.
Currently we can't specify a set of registers as a register constraint.
This change forces a fixed register (eax) in places that need
a byte register.

BUG=77752
Review URL: http://codereview.chromium.org/6708109

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7417 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-29 15:19:42 +00:00
ager@chromium.org
dad747e70e Remove redundant usages of some macros and functions in debug.cc
Cleanup of HEAP and FACTORY macros and use isolate_ member of classes where it is possible.
Cleanup of debugger(), debug() and global_handles() functions.
Pass the isolate pointer to the HandleScope constructor.

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/6708108

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7416 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-29 14:00:41 +00:00
ager@chromium.org
203667b5c0 Cleanup of HEAP and LOGGER macro usage in cpu-profiler.cc.
BUG=none
TEST=none

Review URL: http://codereview.chromium.org/6708101

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7415 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-29 13:41:06 +00:00
ricow@chromium.org
b4bae54ef2 Decrease number of runs in mjsunit/compiler/pic.js (Test still gets optimized, even without --stress-opt)
Review URL: http://codereview.chromium.org/6731049

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7414 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-29 13:20:05 +00:00
lrn@chromium.org
385e4deff5 Make the preparser standalone library and process build in debug mode.
It should now be possible to build the preparser using 'scons preparser' in both release and debug modes.
Remove v8.h include from scanner-base.h and other files.
Remove NativeAllocationChecker and all of its kind.
Moved Isolate::PreallocatedStorage* to isolate.cc

Review URL: http://codereview.chromium.org/6749029

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7413 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-29 13:06:48 +00:00