danno@chromium.org
3667f92cbb
Add dependency to HLoadKeyed* instructions to prevent invalid hoisting
...
BUG=chromium:137768
TEST=test/mjsunit/regress/regress-137768.js
Review URL: https://chromiumcodereview.appspot.com/10802038
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12173 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-23 13:59:24 +00:00
yangguo@chromium.org
398a179d51
Update mozilla test expectations for outdated test.
...
R=jkummerow@chromium.org
BUG=v8:2240
TEST=
Review URL: https://chromiumcodereview.appspot.com/10816018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12170 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-23 11:24:48 +00:00
yangguo@chromium.org
0c23596d7d
Interpret negative hexadecimal literals as NaN.
...
R=rossberg@chromium.org
BUG=v8:2240
TEST=str-to-num.js
Review URL: https://chromiumcodereview.appspot.com/10818003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12169 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-23 10:33:41 +00:00
yangguo@chromium.org
50bf19a975
Fix corner case when transforming dictionary to fast elements.
...
R=verwaest@chromium.org
BUG=v8:2249
TEST=regress-2249.js
Review URL: https://chromiumcodereview.appspot.com/10802051
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12167 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-23 08:41:53 +00:00
danno@chromium.org
8c89cc4cab
Optimize Smi keys for KeyedLoads
...
Allows KeyeLoad/KeyedStore operations where the key is a Smi to fold the untagging of the key into the element offset calculation.
Review URL: https://chromiumcodereview.appspot.com/10735020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12156 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-20 11:00:33 +00:00
jkummerow@chromium.org
c09a137013
Android test runner: Update mjsunit status
...
Review URL: https://chromiumcodereview.appspot.com/10810012
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12155 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-20 10:03:39 +00:00
jkummerow@chromium.org
c56050a08a
Android test runner: Update cctest status
...
Review URL: https://chromiumcodereview.appspot.com/10802030
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12154 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-20 10:00:31 +00:00
yangguo@chromium.org
53f329ab5f
Add test case for custom error's toString.
...
R=arv@chromium.org
BUG=
TEST=error-tostring.js
Review URL: https://chromiumcodereview.appspot.com/10388208
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12151 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-20 08:03:46 +00:00
sanjoy@chromium.org
693c7643d2
Optimize functions on a second thread.
...
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/10807024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-19 18:58:23 +00:00
verwaest@chromium.org
52bfb2a18e
Moved lastadded from DescriptorArray to Map. Renamed kLastAdded to kEnumCache.
...
Review URL: https://chromiumcodereview.appspot.com/10802034
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12146 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-19 14:45:19 +00:00
jkummerow@chromium.org
96cfef98d8
Android test runner: Rename "Error" to "ANDROID"
...
Review URL: https://chromiumcodereview.appspot.com/10809010
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12143 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-19 10:44:15 +00:00
verwaest@chromium.org
cd98b0c839
Removed CopyAppendForeignDescriptor.
...
Use descriptor array preallocation + appending instead.
Review URL: https://chromiumcodereview.appspot.com/10782033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12133 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-18 14:00:58 +00:00
yangguo@chromium.org
d340db9135
Insert missing write barrier in sliced string allocation.
...
BUG=v8:2237
TEST=test-heap/Regress2237
Review URL: https://chromiumcodereview.appspot.com/10781033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12127 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-18 13:39:53 +00:00
jkummerow@chromium.org
c20c99a98c
Make message pass in Android testing
...
Review URL: https://chromiumcodereview.appspot.com/10805006
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12123 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-18 11:55:39 +00:00
jkummerow@chromium.org
6a60899022
Build V8 for Android IA
...
Review URL: https://chromiumcodereview.appspot.com/10778033
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12122 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-18 11:43:44 +00:00
verwaest@chromium.org
90c7cb1397
When following an accessor transition for an already existing accessor, don't load the last added descriptor but the same descriptor as we already found previously.
...
BUG=137689
TEST=test/mjsunit/regress/regress-crbug-137689.js
Review URL: https://chromiumcodereview.appspot.com/10808005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12115 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-18 09:20:57 +00:00
verwaest@chromium.org
33147848dc
Fix presubmit failure in r12107.
...
Review URL: https://chromiumcodereview.appspot.com/10780035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12108 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-17 16:00:00 +00:00
danno@chromium.org
43d0ed048d
Implements a new API to set a function entry hook for profiling.
...
Exposes a new API; V8::SetFunctionEntryHook.
If a non-NULL function entry hook is set, the code generator(s) will invoke on the entry hook at the very start of each generated function.
Committed: https://code.google.com/p/v8/source/detail?r=12069
Committed: https://code.google.com/p/v8/source/detail?r=12083
Review URL: https://chromiumcodereview.appspot.com/10706002
Patch from Sigurður Ásgeirsson <siggi@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12107 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-17 15:18:15 +00:00
mstarzinger@chromium.org
6744e6e9a6
Remove obsolete ParserApi::PartialPreParse method.
...
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10787036
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12103 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-17 11:31:05 +00:00
mstarzinger@chromium.org
bb9f4470c6
Fix missing tagging of stack value in finally block.
...
R=yangguo@chromium.org
BUG=chromium:137496
TEST=cctest/test-api/Regress137496
Review URL: https://chromiumcodereview.appspot.com/10787017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12096 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-16 13:38:17 +00:00
mstarzinger@chromium.org
f71de19a4b
Fix ICs for slow objects with native accessor.
...
This prevents creation of LoadICs or StoreICs for native callbacks on
objects in dictionary mode. Those ICs fail if the accessor is installed
on the receiver itself and also lead to bogus type feedback.
R=danno@chromium.org
BUG=chromium:137002
TEST=test/test-api/Regress137002[a,b]
Review URL: https://chromiumcodereview.appspot.com/10781011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12088 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-16 09:53:32 +00:00
yangguo@chromium.org
022ba0588a
Fix transcendental cache on ARM in optimized code.
...
R=jkummerow@chromium.org
BUG=v8:2234
TEST=regress-2234.js
Review URL: https://chromiumcodereview.appspot.com/10695205
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-16 09:44:59 +00:00
danno@chromium.org
b1530257ab
Revert 12083: Implements a new API to set a function entry hook for profiling.
...
TBR=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10695206
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12084 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-13 16:33:27 +00:00
danno@chromium.org
5c8c4bec46
Implements a new API to set a function entry hook for profiling.
...
Exposes a new API; V8::SetFunctionEntryHook.
If a non-NULL function entry hook is set, the code generator(s) will invoke on the entry hook at the very start of each generated function.
Committed: https://code.google.com/p/v8/source/detail?r=12069
Review URL: https://chromiumcodereview.appspot.com/10706002
Patch from Sigurður Ásgeirsson <siggi@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12083 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-13 16:18:37 +00:00
svenpanne@chromium.org
43e87a65e1
Added Crankshaft support for setters.
...
Refactored ComputeLoadStoreField a bit on the way to clarify a bit what it
actually does.
Review URL: https://chromiumcodereview.appspot.com/10692187
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12072 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-13 07:14:28 +00:00
danno@chromium.org
30569cba9b
Revert 12069: Implements a new API to set a function entry hook for profiling
...
Reverted due to waterfall failures
TBR=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10704189
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12070 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-12 15:59:50 +00:00
danno@chromium.org
d6edbdd436
Implements a new API to set a function entry hook for profiling.
...
Exposes a new API; V8::SetFunctionEntryHook.
If a non-NULL function entry hook is set, the code generator(s) will invoke on the entry hook at the very start of each generated function.
Review URL: https://chromiumcodereview.appspot.com/10706002
Patch from Sigurður Ásgeirsson <siggi@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-12 15:42:39 +00:00
yangguo@chromium.org
8ce1ebb5cf
Do not enter the debugger when debugger is not active.
...
R=mstarzinger@chromium.org
BUG=
TEST=test-debug/DebuggerCreatesContextIffActive
Review URL: https://chromiumcodereview.appspot.com/10702166
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12059 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-12 11:31:52 +00:00
svenpanne@chromium.org
b8a7abd1fc
Perform HasFastProperties check on prototypes when computing call targets in Crankshaft, part 2.
...
The previous fix was for "real" calls, this one is for getters. It is a bit
unfortunate that this has to be fixed twice: We should really break up
Call::ComputeTarget into a predicate and 1 or 2 getters, so code can be reused.
The regression test has been modified a bit to make things more uniform.
Review URL: https://chromiumcodereview.appspot.com/10702164
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12053 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-12 09:32:26 +00:00
jkummerow@chromium.org
2f43f5e9d7
MIPS: Rename "mips" arch to "mipsel" in the GYP build.
...
In the traditional MIPS naming scheme, "mips" is used for
big-endian mips and "mipsel" is used for little-endian mips.
In V8 the "mips" build is little-endian, so the "mips" target is
renamed to "mipsel" to be compliant with the traditional MIPS
naming scheme.
This change is also required for supporting the Chromium project on MIPS.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/10695114
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-11 15:15:04 +00:00
jkummerow@chromium.org
0c4cc038e6
Add missing --allow-natives-syntax flag to test case
...
R=rossberg@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10698152
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12046 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-11 14:45:47 +00:00
jkummerow@chromium.org
432576b7c8
Perform HasFastProperties check on prototypes when computing call targets in Crankshaft.
...
BUG=125148
TEST=mjsunit/regress/regress-crbug-125148
Review URL: https://chromiumcodereview.appspot.com/10735054
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12043 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-11 14:27:53 +00:00
yangguo@chromium.org
2a819667c1
Do not use user-defined __lookupGetter__ when generating stack trace.
...
BUG=v8:1591
TEST=regress-1591.js
Review URL: https://chromiumcodereview.appspot.com/10736030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-11 11:35:19 +00:00
yangguo@chromium.org
b2f1c41218
Sync preparser and parser wrt syntax error in switch..case.
...
R=jkummerow@chromium.org
BUG=v8:2210
TEST=test-parsing/ParserSync
Review URL: https://chromiumcodereview.appspot.com/10701116
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-11 07:47:29 +00:00
mstarzinger@chromium.org
97cbaec08a
Add OS::GetCurrentProcessId and prepend output from trace-gc with the current pid
...
BUG=none
TEST=manual
Review URL: https://chromiumcodereview.appspot.com/9817002
Patch from Jochen Eisinger <jochen@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12032 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-10 12:52:36 +00:00
yangguo@chromium.org
5aacb93168
Correctly report octal literals in strict mode when preparsing.
...
SingletonLogger::LogMessage did not work as advertised and
overwrote existing message.
R=mstarzinger@chromium.org
BUG=v8:2220
TEST=test-parsing/PreparserStrictOctal
Review URL: https://chromiumcodereview.appspot.com/10689134
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12031 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-10 12:24:17 +00:00
mstarzinger@chromium.org
09bfdabd2a
Fix inline constructors for Harmony Proxy prototypes.
...
R=rossberg@chromium.org
BUG=v8:2225
TEST=mjsunit/regress/regress-2225
Review URL: https://chromiumcodereview.appspot.com/10736009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-10 11:28:33 +00:00
mmassi@chromium.org
c74871f37b
Fixed array bounds check elimination (Chromium issue 132114).
...
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/10698125
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12025 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-10 11:01:29 +00:00
verwaest@chromium.org
1007696cdb
After transitioning to constant function, return the constant function as result of the assignment.
...
BUG=v8:2226
TEST=test/mjsunit/regress/regress-2226.js
Review URL: https://chromiumcodereview.appspot.com/10700137
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-10 09:31:30 +00:00
verwaest@chromium.org
75407ae2b7
Moving prototype transitions into the header of the transition array.
...
Review URL: https://chromiumcodereview.appspot.com/10692026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-10 07:53:00 +00:00
yangguo@chromium.org
b4cb3e28ca
Fix Debug::Break crash.
...
BUG=131642
TEST=test-debug/Regress131642
Review URL: https://chromiumcodereview.appspot.com/10698123
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-09 15:18:08 +00:00
rossberg@chromium.org
98db1a369d
Implement proper module linking.
...
Specifically:
- In parser, check that all exports are defined.
- Move JSModule allocation from parser to scope resolution.
- Move JSModule linking from full codegen to scope resolution.
- Implement module accessors for exported value members.
- Allocate module contexts statically along with JSModules
(to allow static linking), but chain them when module literal is evaluated.
- Make module contexts' extension slot refer to resp. JSModule
(makes modules' ScopeInfo accessible from context).
- Some other tweaks to context handling in general.
- Make any code containing module literals (and thus embedding
static references to JSModules) non-cacheable.
This enables accessing module instance objects as expected.
Import declarations are a separate feature and do not work yet.
R=mstarzinger@chromium.org
BUG=v8:1569
TEST=
Review URL: https://chromiumcodereview.appspot.com/10690043
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-09 08:59:03 +00:00
jkummerow@chromium.org
1d0aea7c3a
Fix wrong iteration variable in test/preparser/strict-identifiers.pyt
...
R=mstarzinger@chromium.org
TEST=preparser/strict-identifiers
Review URL: https://chromiumcodereview.appspot.com/10693116
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-09 08:26:17 +00:00
yangguo@chromium.org
3e3160b08c
Correctly advance the scanner when scanning unicode regexp flag.
...
R=rossberg@chromium.org
BUG=136084
TEST=regress-136084.js
Review URL: https://chromiumcodereview.appspot.com/10703106
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12002 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-06 14:04:15 +00:00
mstarzinger@chromium.org
026f179b34
Fix unhandlified code calling Harmony Proxy traps.
...
R=rossberg@chromium.org
BUG=v8:2219
TEST=mjsunit/regress/regress-2219
Review URL: https://chromiumcodereview.appspot.com/10703103
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-06 11:34:22 +00:00
yangguo@chromium.org
791632cf06
Fix compilation when disabling debugger support.
...
Based on a patch by Remi Duraffort <remi.duraffort@st.com>: http://codereview.chromium.org/10702093/
R=mstarzinger@chromium.org
BUG=
TEST=build with debuggersupport=off
Review URL: https://chromiumcodereview.appspot.com/10697085
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11995 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-05 16:23:14 +00:00
verwaest@chromium.org
d7a5b7d5e2
Separating transitions from descriptors.
...
In this design maps contain descriptor arrays, which in turn can contain transition arrays. If transitions are needed when no descriptor array is present, a descriptor array without real descriptors is inserted just so it can point at the transition array.
The transition array does not contain details about the field it transitions to. In order to weed out transitions to FIELDs from CONSTANT_FUNCTION (what used to be MAP_TRANSITION vs CONSTANT_TRANSITION), the transition needs to be followed and the details need to be looked up in the target map. CALLBACKS transitions are still easy to recognize since the transition targets are stored as an AccessorPair containing the maps, rather than the maps directly.
Currently AccessorPairs containing a transition and an accessor are shared between the descriptor array and the transition array. This simplifies lookup since we only have to look in one of both arrays. This will change in subsequent revisions, when descriptor arrays will become shared between multiple maps, since transitions cannot be shared.
Review URL: https://chromiumcodereview.appspot.com/10697015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11994 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-05 13:54:20 +00:00
danno@chromium.org
f97df41fcf
Fix timout of packed-elements.js on ARM
...
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10703093
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11993 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-05 13:40:51 +00:00
mstarzinger@chromium.org
fd9bab4ea2
Cleanup Test262 expectations for simulators.
...
R=jkummerow@chromium.org
TEST=test262
Review URL: https://chromiumcodereview.appspot.com/10690090
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11990 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-05 12:44:44 +00:00
jkummerow@chromium.org
3766f21cab
Remove $FAST variable from mozilla.status. It was never set to true anyway.
...
Review URL: https://chromiumcodereview.appspot.com/10694083
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11985 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-05 07:33:01 +00:00