platform/upstream/v8.git
13 years agoFix optimized code for Math.round on ia32 platform.
whesse@chromium.org [Wed, 13 Apr 2011 10:32:05 +0000 (10:32 +0000)]
Fix optimized code for Math.round on ia32 platform.
Review URL: http://codereview.chromium.org/6838012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7600 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix Math.round in runtime.cc and x64 optimized code.
lrn@chromium.org [Wed, 13 Apr 2011 09:35:56 +0000 (09:35 +0000)]
Fix Math.round in runtime.cc and x64 optimized code.

Make math-round.js test check both normal and optimized version.
Add some cases to the tests.

BUG=v8:958
TEST=mjsunit/math-round

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7599 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoPrepare push to trunk. Now working on version 3.3.0.
ager@chromium.org [Wed, 13 Apr 2011 08:34:46 +0000 (08:34 +0000)]
Prepare push to trunk. Now working on version 3.3.0.
Review URL: http://codereview.chromium.org/6833021

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7595 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRevert revision 7582.
karlklose@chromium.org [Wed, 13 Apr 2011 08:00:59 +0000 (08:00 +0000)]
Revert revision 7582.

The changes caused mozilla date test failures on ARM.

TBR=ager
Review URL: http://codereview.chromium.org/6833020

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7594 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoAdd global setup for runtime profiler.
vitalyr@chromium.org [Tue, 12 Apr 2011 19:15:53 +0000 (19:15 +0000)]
Add global setup for runtime profiler.

Whether it's enabled or not must not change while we're running. Let's
not waste time recomputing it. This also makes the VM state tracking
code slightly more lightweight.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7593 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFit Representation and HType in one word to make HValue smaller.
vitalyr@chromium.org [Tue, 12 Apr 2011 19:05:48 +0000 (19:05 +0000)]
Fit Representation and HType in one word to make HValue smaller.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7592 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoMoving JavaScript code from i18n-extension.cc into i18n.js file using
cira@chromium.org [Tue, 12 Apr 2011 18:19:40 +0000 (18:19 +0000)]
Moving JavaScript code from i18n-extension.cc into i18n.js file using
tools/js2c.py script.
Added new type I18N to natives.h enum.
Review URL: http://codereview.chromium.org/6825049

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7591 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix load/store of external float arrays on ARM
jkummerow@chromium.org [Tue, 12 Apr 2011 15:20:26 +0000 (15:20 +0000)]
Fix load/store of external float arrays on ARM

BUG=1323
TEST=mjsunit/regress/regress-1323.js, run with simulator=arm

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7590 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoX64: Tweak code generation slightly.
lrn@chromium.org [Tue, 12 Apr 2011 13:20:51 +0000 (13:20 +0000)]
X64: Tweak code generation slightly.

Uses a shorter opcode for movl and movb with immediates.
Make movl preferable to movq in Set(register, int64_t) and use Set in more places.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7589 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoARM: Set expectations for failing deserializations tests to turn the bot green
sgjesse@chromium.org [Tue, 12 Apr 2011 12:30:13 +0000 (12:30 +0000)]
ARM: Set expectations for failing deserializations tests to turn the bot green

R=karl.klose@chromium.org

BUG=v8:1075
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7588 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoEnable inlining of functions containing loops.
fschneider@chromium.org [Tue, 12 Apr 2011 10:27:09 +0000 (10:27 +0000)]
Enable inlining of functions containing loops.
Review URL: http://codereview.chromium.org/6813107

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoChange the list of statements that are inlineable into a black-list.
fschneider@chromium.org [Tue, 12 Apr 2011 08:37:29 +0000 (08:37 +0000)]
Change the list of statements that are inlineable into a black-list.

Before we had a white-list of things that we allow inside inlined functions.

This way we can enable new constructs one-by-one.
Review URL: http://codereview.chromium.org/6825042

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7585 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoCleanup of ScannerConstants, now named UnicodeCache.
lrn@chromium.org [Tue, 12 Apr 2011 08:27:38 +0000 (08:27 +0000)]
Cleanup of ScannerConstants, now named UnicodeCache.

The ScannerConstants class was originally static fields on the scanner class.
During creation of the stand-alone preparser and later isolates, it has been
moved into a separate class with a per-isolate instance.
It is used to hold caching unicode Predicate values.

This change renames the class to UnicodeCache, and passes a reference
to the instance down to methods that doesn't have an easy access to
an isolate (to avoid, e.g., having to do an Isolate::Current() for every
number parsed).

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRevert 7581, you can't have try except finally toghetter until python 2.5
ricow@chromium.org [Tue, 12 Apr 2011 07:46:17 +0000 (07:46 +0000)]
Revert 7581, you can't have try except finally toghetter until python 2.5

We have some 2.4 versions on the windows buildbots, I will try to have these updated and reapply.
Review URL: http://codereview.chromium.org/6821069

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7583 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoARM: Add optimization for constant RHS in DoMulI.
karlklose@chromium.org [Tue, 12 Apr 2011 06:44:15 +0000 (06:44 +0000)]
ARM: Add optimization for constant RHS in DoMulI.

Patch by ARM Ltd.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7582 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix tools/test.py to allow CTRL+C to work correctly again.
ricow@chromium.org [Tue, 12 Apr 2011 06:26:38 +0000 (06:26 +0000)]
Fix tools/test.py to allow CTRL+C to work correctly again.

This also changes the AfterRun functions to allow None as the passed in parameter.
Review URL: http://codereview.chromium.org/6824040

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7581 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoARM: Always enable ARMv7 when VFPv3 is enabled.
sgjesse@chromium.org [Tue, 12 Apr 2011 06:12:45 +0000 (06:12 +0000)]
ARM: Always enable ARMv7 when VFPv3 is enabled.

R=vegorov@chromium.org, rodolph.perfetta@gmail.com

BUG=v8:1317
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7580 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix retained object info leak.
vitalyr@chromium.org [Tue, 12 Apr 2011 05:08:13 +0000 (05:08 +0000)]
Fix retained object info leak.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7578 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoAnother attempt to fix Win build.
dimich@chromium.org [Tue, 12 Apr 2011 00:49:30 +0000 (00:49 +0000)]
Another attempt to fix Win build.
Review URL: http://codereview.chromium.org/6825061

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7577 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix build borkage due to r7575
dimich@chromium.org [Tue, 12 Apr 2011 00:42:27 +0000 (00:42 +0000)]
Fix build borkage due to r7575
(landing for Dmitry Lomov)
Review URL: http://codereview.chromium.org/6823065

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7576 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoDo not rely on uniqueness of pthread_t
vitalyr@chromium.org [Mon, 11 Apr 2011 23:46:22 +0000 (23:46 +0000)]
Do not rely on uniqueness of pthread_t

Patch by Dmitry Lomov.

pthreads implementations are free to reuse pthread_t (thread id) after
the thread has died. This change gets rid of ThreadHandle class and
replaces it with v8-managed thread identifiers.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7575 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoAllow recursive messages reporting as it is already used.
antonm@chromium.org [Mon, 11 Apr 2011 16:16:52 +0000 (16:16 +0000)]
Allow recursive messages reporting as it is already used.

Instead discard unhandled exceptions thown while running
message listeners.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7574 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoBring test262 expectations up-to-date.
mmaly@chromium.org [Mon, 11 Apr 2011 13:54:30 +0000 (13:54 +0000)]
Bring test262 expectations up-to-date.
Add missing *.js files into Xcode project.

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7573 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoIntroduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization.
jkummerow@chromium.org [Mon, 11 Apr 2011 13:24:50 +0000 (13:24 +0000)]
Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization.

TEST=existing unit tests still pass

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7572 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoPrepare push to trunk. Now working on version 3.2.10.
karlklose@chromium.org [Mon, 11 Apr 2011 12:14:53 +0000 (12:14 +0000)]
Prepare push to trunk. Now working on version 3.2.10.
Review URL: http://codereview.chromium.org/6820029

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7569 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix x64 build after r7567
mikhail.naganov@gmail.com [Mon, 11 Apr 2011 11:49:55 +0000 (11:49 +0000)]
Fix x64 build after r7567

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7568 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoMark single-argument inline constructors as 'explicit'.
mikhail.naganov@gmail.com [Mon, 11 Apr 2011 11:38:34 +0000 (11:38 +0000)]
Mark single-argument inline constructors as 'explicit'.

There is currently a bug in cpplint.py hiding this problem.

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

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7567 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRemove code from the deprecated GenericBinaryOpStub.
fschneider@chromium.org [Mon, 11 Apr 2011 09:39:21 +0000 (09:39 +0000)]
Remove code from the deprecated GenericBinaryOpStub.

All platforms are now using the TypeRecordingBinaryOpStub.

I also removed the ARM IntegerModStub which was called from
the GenericBinaryOpStub.
Review URL: http://codereview.chromium.org/6826032

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7566 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoARM: Remove support for ABI prior to EABI
sgjesse@chromium.org [Mon, 11 Apr 2011 09:04:30 +0000 (09:04 +0000)]
ARM: Remove support for ABI prior to EABI

The support for the old ABI is known to be broken and has been deprecated for some time now. Removed the instructions for loading and storing co-processor registers as they where only used to support the old ABI.

R=karlklose@chromium.org

BUG=v8:1316
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7565 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoARM: Fix wrong fall through handling
sgjesse@chromium.org [Mon, 11 Apr 2011 08:59:29 +0000 (08:59 +0000)]
ARM: Fix wrong fall through handling

Looks like a copy/paste mistake.

R=kmillikin@chromium.org

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7564 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix JS ratio computation on startup.
vitalyr@chromium.org [Sun, 10 Apr 2011 08:29:18 +0000 (08:29 +0000)]
Fix JS ratio computation on startup.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7562 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoStrict mode fixes.
mmaly@chromium.org [Fri, 8 Apr 2011 14:30:10 +0000 (14:30 +0000)]
Strict mode fixes.
- mutual inlining strict and non-strict functions in crankshaft.
- assignment to undefined variable with eval in scope.
- propagation of strict mode through lazy compilation.

BUG=
TEST=test/mjsunit/strict-mode.js test/mjsunit/strict-mode-opt.js

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7561 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoX64: Convert HeapNumbers that contain valid smi values to smis in binop-stub.
lrn@chromium.org [Fri, 8 Apr 2011 12:34:00 +0000 (12:34 +0000)]
X64: Convert HeapNumbers that contain valid smi values to smis in binop-stub.

When the TypeRecordingBinaryOpStub expect smi values as input, they might
sometimes come as HeapNumbers. The transition code will detect the heap numbers
as holding values that are valid smi values, and will not change the expectations.
However, the stub didn't handle HeapNumbers and always tried to transition again.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRemoving old codegen from Xcode project.
mmaly@chromium.org [Fri, 8 Apr 2011 12:22:43 +0000 (12:22 +0000)]
Removing old codegen from Xcode project.

TBR=ager@chromium.org

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7559 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoARM: Fix a crash bug in code for %_IsStringWrapperSafeForDefaultValueOf
sgjesse@chromium.org [Fri, 8 Apr 2011 11:37:30 +0000 (11:37 +0000)]
ARM: Fix a crash bug in code for %_IsStringWrapperSafeForDefaultValueOf

Turned out out that the setting of bit Map::kStringWrapperSafeForDefaultValueOf in Map::kStringWrapperSafeForDefaultValueOf was not done on the map but in some other memory location causing crashes.

R=vegorov@chromium.org

BUG=none
TEST=mozilla/data/js1_2/String/slice.js (crashed only on ARM hardware)

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7558 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix compilation with gdbjit=on.
vegorov@chromium.org [Fri, 8 Apr 2011 11:25:19 +0000 (11:25 +0000)]
Fix compilation with gdbjit=on.

Ensure mutual exclusion on access to GDBJITInterface internal structures to make it work correctly with several isolates.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7557 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix some presumbmit failures.
yurys@chromium.org [Fri, 8 Apr 2011 10:02:01 +0000 (10:02 +0000)]
Fix some presumbmit failures.
Review URL: http://codereview.chromium.org/6801070

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7554 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoReport stack overflow exceptions to V8 message listeners
yurys@chromium.org [Fri, 8 Apr 2011 09:39:45 +0000 (09:39 +0000)]
Report stack overflow exceptions to V8 message listeners

Stack overflow exceptions like other JavaScript exceptions should be reported to listeners added via V8::AddMessageListener
Review URL: http://codereview.chromium.org/6816021

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7553 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoAdd ToBoolean-conversion of constants in Crankshaft and use it when generating a...
fschneider@chromium.org [Fri, 8 Apr 2011 06:54:50 +0000 (06:54 +0000)]
Add ToBoolean-conversion of constants in Crankshaft and use it when generating a branch based on a constant.
Review URL: http://codereview.chromium.org/6801050

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7552 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix auto suspension of the sampler thread.
vitalyr@chromium.org [Thu, 7 Apr 2011 20:57:07 +0000 (20:57 +0000)]
Fix auto suspension of the sampler thread.

BUG=http://crbug.com/78267

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7549 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoMake exception thrown via v8 public API propagate to v8::TryCatch as JS thrown except...
antonm@chromium.org [Thu, 7 Apr 2011 19:52:24 +0000 (19:52 +0000)]
Make exception thrown via v8 public API propagate to v8::TryCatch as JS thrown exceptions do.

Correctly process failures which can be returned by Object::GetProperty
when performing GetRealNamedProperty* queries.

Callback properties can produce exceptions so we need to wrap access to them
into exception checks.  However, despite of many other methods with exception
checks, property access doesn't mandatroy go via JavaScript and hence we
need to inject code to propagate exception to public API TryCatch handlers.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7548 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix win64 compile failure.
ricow@chromium.org [Thu, 7 Apr 2011 16:10:56 +0000 (16:10 +0000)]
Fix win64 compile failure.
Review URL: http://codereview.chromium.org/6810021

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7547 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix v8.gyp.
ager@chromium.org [Thu, 7 Apr 2011 15:02:38 +0000 (15:02 +0000)]
Fix v8.gyp.

R=kmillikin@chromium.org
BUG=
TEST=
TBR=

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7546 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agooops
whesse@chromium.org [Thu, 7 Apr 2011 15:01:50 +0000 (15:01 +0000)]
oops

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7545 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix cow fixed array map check in optimized arm code.
danno@chromium.org [Thu, 7 Apr 2011 15:01:20 +0000 (15:01 +0000)]
Fix cow fixed array map check in optimized arm code.

R=ager@chromium.org
BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7544 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRestart AST node numbering when we enter a function.
whesse@chromium.org [Thu, 7 Apr 2011 14:45:34 +0000 (14:45 +0000)]
Restart AST node numbering when we enter a function.

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7543 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRemove some dead code.
ager@chromium.org [Thu, 7 Apr 2011 14:42:37 +0000 (14:42 +0000)]
Remove some dead code.

- virtual-frame*
- register-allocator*
- jump-target*
- most of codegen*
- AstOptimizer and fields on AST

There is a lot of additional cleanup that we should do but this gets
rid of a lot.

R=kmillikin@chromium.org
BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7542 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoIn LCodeGen::DoDeferredLInstanceOfKnownGlobal emit safepoint with registers for the...
vegorov@chromium.org [Thu, 7 Apr 2011 13:32:45 +0000 (13:32 +0000)]
In LCodeGen::DoDeferredLInstanceOfKnownGlobal emit safepoint with registers for the call to stub.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7541 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoAdd GCMole to the repository.
vegorov@chromium.org [Thu, 7 Apr 2011 12:38:16 +0000 (12:38 +0000)]
Add GCMole to the repository.

GCMole is a simple static analysis tool that searches for GC-usafe evaluation order dependent callsites.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7540 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix --print-code-stubs during VM initialization
peterhal@chromium.org [Thu, 7 Apr 2011 11:29:40 +0000 (11:29 +0000)]
Fix --print-code-stubs during VM initialization

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7539 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix bad deoptimization tests for double-to-int conversion.
lrn@chromium.org [Thu, 7 Apr 2011 10:44:39 +0000 (10:44 +0000)]
Fix bad deoptimization tests for double-to-int conversion.

Deopted on zero result, not just bad cvttsi2sd conversion.
Add inline floating point result for SHR in Smi TypeRecordingBinaryOpStub.
Small optimizations.

Adding rightshift to case handled by floating point result in type-recording binary op stub.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7537 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix opmitized external array access for compound assignments and count operations...
danno@chromium.org [Thu, 7 Apr 2011 09:51:25 +0000 (09:51 +0000)]
Fix opmitized external array access for compound assignments and count operations, also implement missing ARM typed array Hydrogen loads and stores.

BUG=none
TEST=none

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7536 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix build break on Mac.
mmaly@chromium.org [Thu, 7 Apr 2011 09:18:06 +0000 (09:18 +0000)]
Fix build break on Mac.

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7535 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoMake preparser api be exported in shared libraries.
lrn@chromium.org [Thu, 7 Apr 2011 08:41:37 +0000 (08:41 +0000)]
Make preparser api be exported in shared libraries.

Adds missing V8EXPORT declarations to types in v8-preparser.h.

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7531 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoMake "length" and "BYTES_PER_ELEMENT" properties of typed arrays accessible.
jkummerow@chromium.org [Thu, 7 Apr 2011 08:24:56 +0000 (08:24 +0000)]
Make "length" and "BYTES_PER_ELEMENT" properties of typed arrays accessible.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7527 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRemove unnecessary AST node for ++ and -- operations.
fschneider@chromium.org [Thu, 7 Apr 2011 07:56:43 +0000 (07:56 +0000)]
Remove unnecessary AST node for ++ and -- operations.

Instead of adding an extra AST node we can just use an auxiliary
bailout id for named and keyed property count operations.
Review URL: http://codereview.chromium.org/6810015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7524 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix arm and x64 build break.
mmaly@chromium.org [Wed, 6 Apr 2011 22:47:14 +0000 (22:47 +0000)]
Fix arm and x64 build break.

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7523 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoStrict mode renamings.
mmaly@chromium.org [Wed, 6 Apr 2011 20:20:31 +0000 (20:20 +0000)]
Strict mode renamings.

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7522 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoMake object groups and implicit references a bit more lightweight.
vitalyr@chromium.org [Wed, 6 Apr 2011 19:17:54 +0000 (19:17 +0000)]
Make object groups and implicit references a bit more lightweight.

We can only call malloc/free once per group and we can avoid scanning
through a list of NULLs if we keep unprocessed groups in the beginning.

I also changed the internal representation of implicit references to
hold a handle to the parent (instead of a direct pointer). The
prologue callback must not trigger a GC, but it's better to be safe.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7521 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix Xcode project.
mmaly@chromium.org [Wed, 6 Apr 2011 19:06:19 +0000 (19:06 +0000)]
Fix Xcode project.

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7520 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoAdd a missing handle for serialized scope info
sgjesse@chromium.org [Wed, 6 Apr 2011 18:32:01 +0000 (18:32 +0000)]
Add a missing handle for serialized scope info

R=vegorov@chromium.org

BUG=v8:1252
TEST=none

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7519 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoDebugger: show local scope before with for functions created inside with block
yurys@chromium.org [Wed, 6 Apr 2011 17:54:39 +0000 (17:54 +0000)]
Debugger: show local scope before with for functions created inside with block
Review URL: http://codereview.chromium.org/6804015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7518 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years ago1309 fix
peterhal@chromium.org [Wed, 6 Apr 2011 16:22:06 +0000 (16:22 +0000)]
1309 fix

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7517 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoAlways iterate outgoing arguments as a part of caller frame.
vegorov@chromium.org [Wed, 6 Apr 2011 14:23:27 +0000 (14:23 +0000)]
Always iterate outgoing arguments as a part of caller frame.

Change caller_sp() to always point to the place after outgoing arguments.

Change deoptimizer to use absolute stack slot addresses for deferred HeapNumber's materialization.

(This is reapplication of r7504 with fix for mozilla testsuite failures).

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7516 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoX64: Allow the type recording binary op stub to create heapnumber results.
lrn@chromium.org [Wed, 6 Apr 2011 12:52:51 +0000 (12:52 +0000)]
X64: Allow the type recording binary op stub to create heapnumber results.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7515 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoPrepare push to trunk. Now working on version 3.2.9.
vegorov@chromium.org [Wed, 6 Apr 2011 11:03:30 +0000 (11:03 +0000)]
Prepare push to trunk. Now working on version 3.2.9.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7511 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoAdd regression test for overlapping key and value registers.
jkummerow@chromium.org [Wed, 6 Apr 2011 11:01:07 +0000 (11:01 +0000)]
Add regression test for overlapping key and value registers.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7510 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoARM: Add support load/store multiple VFP registers
sgjesse@chromium.org [Wed, 6 Apr 2011 09:06:23 +0000 (09:06 +0000)]
ARM: Add support load/store multiple VFP registers

Enter/exit frames with save doubles use these instructions instead of generating 16 load/store instructions.

R=karlklose@chromium.org, rodolph.perfetta@gmail.com

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7509 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRemove unused last_pc_ in AssemblerX64.
lrn@chromium.org [Wed, 6 Apr 2011 08:41:28 +0000 (08:41 +0000)]
Remove unused last_pc_ in AssemblerX64.

Remove unneeded checks for SSE2 in X64 code.
Remove an unneeded check for SSE3 where the X64 code doesn't use SSE3 features.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7508 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoExpose WebGL typed array constructors in the shell sample
ager@chromium.org [Wed, 6 Apr 2011 08:31:54 +0000 (08:31 +0000)]
Expose WebGL typed array constructors in the shell sample

Review URL: http://codereview.chromium.org/6691061
Patch from Jakob Kummerow <jkummerow@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7507 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoUse placement new for zone objects in hydrogen.
vitalyr@chromium.org [Tue, 5 Apr 2011 18:47:46 +0000 (18:47 +0000)]
Use placement new for zone objects in hydrogen.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7506 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRevert r7504.
vegorov@chromium.org [Tue, 5 Apr 2011 18:46:06 +0000 (18:46 +0000)]
Revert r7504.

Deoptimization infrastructure implicitly uses caller_sp related addressing (where caller_sp is expected to point below outgoing arguments).

TBR=kmillikin@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7505 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoAlways iterate outgoing arguments as a part of caller frame.
vegorov@chromium.org [Tue, 5 Apr 2011 17:18:44 +0000 (17:18 +0000)]
Always iterate outgoing arguments as a part of caller frame.

Change caller_sp() to always point to the place after outgoing arguments.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7504 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRemove environment length from HSimulate instructions.
fschneider@chromium.org [Tue, 5 Apr 2011 09:55:18 +0000 (09:55 +0000)]
Remove environment length from HSimulate instructions.

It was only used in an ASSERT when reconstructing environments
at lithium translation time.
Review URL: http://codereview.chromium.org/6693062

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7501 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoAdd inline non-transcendental cache version of log to lithium.
ricow@chromium.org [Tue, 5 Apr 2011 09:21:02 +0000 (09:21 +0000)]
Add inline non-transcendental cache version of log to lithium.

In addition, this change allows one additional level of inlining.
Review URL: http://codereview.chromium.org/6720017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7500 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoSimplify isolates access during stack iteration (WAS: Move SafeStackFrameIterator...
mikhail.naganov@gmail.com [Tue, 5 Apr 2011 09:01:47 +0000 (09:01 +0000)]
Simplify isolates access during stack iteration (WAS: Move SafeStackFrameIterator::active_count_...)

While trying to fix Mac and Windows versions for this change:
http://codereview.chromium.org/6771047/, I figured out, that we
already store an isolate in StackFrameIterator, so we can use it in
frame objects, instead of requiring it from caller.

I've changed iterators usage to the following scheme: whenever a
caller maintains an isolate pointer, it just passes it to stack
iterator, and no more worries about passing it to frame content
accessors.  If a caller uses current isolate, it can omit passing it
to iterator, in this case, an iterator will use the current isolate,
too.

There was a special case with LiveEdit, which creates
detached copies of frame objects.

R=vitalyr@chromium.org
BUG=none
TEST=none

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7499 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix overlapping registers in external array stores on x64.
ager@chromium.org [Tue, 5 Apr 2011 07:57:35 +0000 (07:57 +0000)]
Fix overlapping registers in external array stores on x64.

R=danno@chromium.org
BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7498 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoCleanup of FACTORY macro and fix Irregexp Interpreter build in test-regexp.cc
vitalyr@chromium.org [Mon, 4 Apr 2011 18:26:06 +0000 (18:26 +0000)]
Cleanup of FACTORY macro and fix Irregexp Interpreter build in test-regexp.cc

Patch by Peter Varga.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7496 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoExtend crankshaft support for global stores
sgjesse@chromium.org [Mon, 4 Apr 2011 15:03:34 +0000 (15:03 +0000)]
Extend crankshaft support for global stores

All global stores are now supported in crankshaft by using the normal store IC when other optimizations are not possible due to the state of the global object.

R=fschneider@chromium.org

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7495 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRemove redundant data member from HChange instructions.
fschneider@chromium.org [Mon, 4 Apr 2011 08:57:21 +0000 (08:57 +0000)]
Remove redundant data member from HChange instructions.

The target representation is already stored as part of HValue::representation().
Review URL: http://codereview.chromium.org/6794014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7493 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoPrepare push to trunk. Now working on version 3.2.8.
kmillikin@chromium.org [Mon, 4 Apr 2011 08:16:54 +0000 (08:16 +0000)]
Prepare push to trunk.  Now working on version 3.2.8.

R=danno@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7490 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoSupport placement new syntax for zone objects and start using it in the parser.
vitalyr@chromium.org [Mon, 4 Apr 2011 06:29:02 +0000 (06:29 +0000)]
Support placement new syntax for zone objects and start using it in the parser.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7489 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix fast TLS support on Mac.
vitalyr@chromium.org [Mon, 4 Apr 2011 05:46:51 +0000 (05:46 +0000)]
Fix fast TLS support on Mac.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7488 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoExplicitly use icu namespace.
ager@chromium.org [Mon, 4 Apr 2011 02:56:34 +0000 (02:56 +0000)]
Explicitly use icu namespace.

Chromium builds with U_USING_ICU_NAMESPACE=0, so we need this.

Landing for thakis@chromium.org.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7487 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoReapply: Never use classic code generator.
ager@chromium.org [Fri, 1 Apr 2011 19:46:21 +0000 (19:46 +0000)]
Reapply: 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.

This time with no removal of the crankshaft flag. --nocrankshaft is
not at all the same as --always-full-compiler which I had used instead
for testing. That was what caused timeouts on the buildbots because of
repeated attempts to optimize hot functions. It makes sense to keep
the crankshaft flag in case you want to run only with the full
compiler and with no adaptive compilation.

R=vitalyr@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7486 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRevert r7483 "Move SafeStackFrameIterator::active_count_ into an isolate."
vitalyr@chromium.org [Fri, 1 Apr 2011 16:21:26 +0000 (16:21 +0000)]
Revert r7483 "Move SafeStackFrameIterator::active_count_ into an isolate."

It broke the Mac build.

Sampler::SampleStack() can't use Isolate::Current() when called from
the sampler thread (from SampleContext). We have to pass the isolate
pointer.

TBR=mikhail.naganov@gmail.com

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7485 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix non-ia32 build.
vitalyr@chromium.org [Fri, 1 Apr 2011 15:37:59 +0000 (15:37 +0000)]
Fix non-ia32 build.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7484 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoMove SafeStackFrameIterator::active_count_ into an isolate.
mikhail.naganov@gmail.com [Fri, 1 Apr 2011 15:23:18 +0000 (15:23 +0000)]
Move SafeStackFrameIterator::active_count_ into an isolate.

R=ager@chromium.org,vitalyr@chromium.org
BUG=none
TEST=none

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7483 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix multi-isolate build:
vitalyr@chromium.org [Fri, 1 Apr 2011 14:46:30 +0000 (14:46 +0000)]
Fix multi-isolate build:

o Make ia32 macro assembler work without an isolate and use it in the
  custom memcpy creation code.
o Remove isolate-dependent code from the custom memcpy and modulo
  functions creation code.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7482 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRevert "Never use classic code generator."
sgjesse@chromium.org [Fri, 1 Apr 2011 14:38:30 +0000 (14:38 +0000)]
Revert "Never use classic code generator."

This reverts r7469 which might have caused the timeouts on the buildbot.

TBR=ager@chromium.org

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7481 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoFix presubmit error.
whesse@chromium.org [Fri, 1 Apr 2011 13:48:10 +0000 (13:48 +0000)]
Fix presubmit error.

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7480 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoRevert "Made test.py not mention the defunct --crankshaft flag."
whesse@chromium.org [Fri, 1 Apr 2011 13:27:28 +0000 (13:27 +0000)]
Revert "Made test.py not mention the defunct --crankshaft flag."

This reverts svn r7477.

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7479 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoAllow construction of x64 Assembler with a NULL Isolate.
whesse@chromium.org [Fri, 1 Apr 2011 13:15:27 +0000 (13:15 +0000)]
Allow construction of x64 Assembler with a NULL Isolate.

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7478 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoMade test.py not mention the defunct --crankshaft flag.
lrn@chromium.org [Fri, 1 Apr 2011 13:07:37 +0000 (13:07 +0000)]
Made test.py not mention the defunct --crankshaft flag.

Cleanup of X64 assembler.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7477 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoIntroduce v8::Object::CreationContext method.
antonm@chromium.org [Fri, 1 Apr 2011 12:17:20 +0000 (12:17 +0000)]
Introduce v8::Object::CreationContext method.

That allows to find out a global context in which the object
was created.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7476 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoCleanup usage of HEAP in mark-compact.
karlklose@chromium.org [Fri, 1 Apr 2011 11:59:00 +0000 (11:59 +0000)]
Cleanup usage of HEAP in mark-compact.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7475 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoIncrease coverage of global loads in optimized code
sgjesse@chromium.org [Fri, 1 Apr 2011 11:54:04 +0000 (11:54 +0000)]
Increase coverage of global loads in optimized code

In the cases where a global property cell cannot be used in the optimized code
use standard load ic to get the property instead of bailing out.

This is re-committing r7212 and r7215 which where reverted in r7239 with the addition of recoring the source position in the hydrogen code for the LoadGlobalCell instruction. To record that position an optional position field has been added to the variable proxy AST node.
Review URL: http://codereview.chromium.org/6758007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7474 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

13 years agoDo not try to execute empty programs.
karlklose@chromium.org [Fri, 1 Apr 2011 11:47:42 +0000 (11:47 +0000)]
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

13 years agoFix SlotRef::SlotAddress for parameters indices.
vegorov@chromium.org [Fri, 1 Apr 2011 11:41:36 +0000 (11:41 +0000)]
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

13 years agoFix Win64 build isolate problem
danno@chromium.org [Fri, 1 Apr 2011 11:21:46 +0000 (11:21 +0000)]
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