bmeurer@chromium.org
7d14f34a1b
Inline Array.shift() fast path instead of using a code stub.
...
TEST=mjsunit/array-shift,mjsunit/array-shift2,mjsunit/array-shift3
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/308793010
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21592 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 07:02:24 +00:00
bmeurer@chromium.org
f600133031
Fix HPushArguments instruction.
...
Use the zone that is passed to New() and fix implementation of
HPushArguments::AddInput() to match HPhi::AddInput().
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/309763003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21591 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 06:42:56 +00:00
yangguo@chromium.org
50cba82cb9
Remove unused debug API.
...
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/303693010
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21590 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 06:22:09 +00:00
bmeurer@chromium.org
a52f569f93
Simplify known successor block lowering.
...
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/308593003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21589 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 05:33:35 +00:00
jkummerow@chromium.org
2232c05b32
BuildNumberToString: Check for undefined keys in the cache
...
BUG=chromium:368114
LOG=y
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/302063004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-31 14:11:48 +00:00
jkummerow@chromium.org
f6a249c6d0
Inlined optimized runtime functions: expose Runtime versions for direct testing, skip Hydrogen versions
...
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/302703004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21585 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-30 17:07:38 +00:00
jkummerow@chromium.org
e82b97ab40
Harden Runtime_FunctionSetPrototype, Isolate::PrintStack
...
BUG=chromium:377209
LOG=n
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/306543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-30 17:04:40 +00:00
bmeurer@chromium.org
5cd009a004
HRor and HSar can deoptimize.
...
BUG=v8:3359
LOG=y
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/309483002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21583 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-30 16:12:25 +00:00
verwaest@chromium.org
f4aa3ab03d
Don't push eax/rax before calling Runtime_Abort
...
Additionally delete the unused Throw(BailoutReason)
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/308083006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21582 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-30 14:27:19 +00:00
rmcilroy@chromium.org
a8b2528d7d
Fix typo in test/fuzz-natives/testcfg.py
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/305963002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21581 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-30 09:31:44 +00:00
plind44@gmail.com
d877929e38
MIPS: Refactor HType to get rid of various hacks.
...
Port r21578 (dcf13aa)
Original commit message:
- Move HType to it's own file.
- Add HType::HeapObject and some other useful types.
- Get rid of the broken and useless HType::NonPrimitive.
- Introduce HType::FromType() to convert from HeapType to HType.
- Also add unit tests for HType.
- Fix types in Crankshaft.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/301023004
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21580 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-29 13:40:51 +00:00
weiliang.lin@intel.com
232ddd9756
X87: Refactor HType to get rid of various hacks.
...
port r21578 (dcf13aa)
Original commit message:
- Move HType to it's own file.
- Add HType::HeapObject and some other useful types.
- Get rid of the broken and useless HType::NonPrimitive.
- Introduce HType::FromType() to convert from HeapType to HType.
- Also add unit tests for HType.
- Fix types in Crankshaft.
BUG=
Review URL: https://codereview.chromium.org/307903002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21579 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-29 13:11:55 +00:00
bmeurer@chromium.org
e9357a5e77
Refactor HType to get rid of various hacks.
...
- Move HType to it's own file.
- Add HType::HeapObject and some other useful types.
- Get rid of the broken and useless HType::NonPrimitive.
- Introduce HType::FromType() to convert from HeapType to HType.
- Also add unit tests for HType.
- Fix types in Crankshaft.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/300893003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21578 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-29 04:13:50 +00:00
rafaelw@chromium.org
74f92f21da
Simplify, speed-up correct-context ObjectObserve calls
...
The original patch which ensured that Object.observe did allocations in the correct context regressed performance about 12%. This patch gets back most of that (about 11%) by simply returning the correct function which is then directly callable from JS, rather than by making the call from the runtime function. A side-effect is that their implementation is shorter.
LOG=Y
BUG=NONE
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/307543008
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21575 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 19:13:41 +00:00
adamk@chromium.org
20eeff9ae4
Allow microtasks to throw exceptions and handle them gracefully
...
If the embedder calls V8::TerminateExecution while we're running microtasks, bail out
and clear any pending microtasks.
All other exceptions are simply swallowed. No current Blink or V8 microtasks throw, this
just ensures something sane happens if another embedder decides to pass a throwing
microtask (or if ours unexpectedly throw due to, e.g., stack exhaustion).
BUG=371566
LOG=Y
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/294943009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21574 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 18:40:04 +00:00
ishell@chromium.org
fdef9ac252
FastCloneShallowArrayStub should not be used it the length of the array is too big as it could eventually exceed the allowed size limit for manually folded allocations.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/300283003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21573 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 16:00:52 +00:00
rossberg@chromium.org
0589ba7017
Split Distributivity test
...
TBR=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/298253008
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21572 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 15:05:53 +00:00
ulan@chromium.org
776fcd685d
Check that all properties are processed in NameDictionary::CopyEnumKeysTo.
...
BUG=372579
LOG=N
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/306663002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21571 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 13:36:25 +00:00
machenbach@chromium.org
509c15c799
Add new benchmark suite runner.
...
TEST=./tools/run_benchmarks.py benchmarks/v8.json
TEST=cd tools/unittests; python -m unittest run_benchmarks_test
Does not support custom results processors yet. Will implement that in a future CL.
BUG=374740
LOG=n
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/293023006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21570 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 13:05:17 +00:00
mstarzinger@chromium.org
f1204c433b
Use non-copying sorting in test harness.
...
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/300873006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21569 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 13:01:47 +00:00
machenbach@chromium.org
cbd242f707
Fix deopt fuzzer after adding a no_sorting flag.
...
BUG=
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/305643007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21568 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 13:00:47 +00:00
danno@chromium.org
8669cce70a
Fix lint complaints in objects.h
...
R=rossberg@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/304533007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21567 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 12:03:40 +00:00
jochen@chromium.org
7a52515db8
Add a dummy v8 target to BUILD.gn so we can depend on this from chrome
...
BUG=none
R=dcarney@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/300883003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21566 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 11:48:55 +00:00
mvstanton@chromium.org
589af5aa4d
CallIC::PrintState() was incorrectly declared as V8_FINAL.
...
This broke the windows build.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/304633004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21565 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 11:45:09 +00:00
mvstanton@chromium.org
54313c8a0f
Refactor CallICStub to use a different stub for each customization.
...
This gives us much more room to customize on different functions, by
using MajorKey to differentiate them.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/295383004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21564 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 11:29:55 +00:00
mstarzinger@chromium.org
1084ead1d9
Fix processing of partially initialized JSWeakCollection.
...
R=hpayer@chromium.org
BUG=v8:2070
LOG=N
Review URL: https://codereview.chromium.org/300843009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21563 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 11:17:02 +00:00
yangguo@chromium.org
1a26ea6a02
Free memory in the mock array buffer allocator.
...
Turns out ASAN and valgrind notice if you leak 0 allocated bytes.
R=jkummerow@chromium.org , jochen@chromium.org
Review URL: https://codereview.chromium.org/306583006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21562 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 11:00:11 +00:00
mstarzinger@chromium.org
18ac428252
Add flag to test harness to stop sorting test cases.
...
R=jkummerow@chromium.org , machenbach@chromium.org
Review URL: https://codereview.chromium.org/307553003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21561 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 10:49:10 +00:00
yangguo@chromium.org
e84bf720f9
Refactor after break target computation.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/301563004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 10:41:13 +00:00
yangguo@chromium.org
eaf8718290
Move LiveEdit-related code.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/300793002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21559 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 10:21:46 +00:00
mvstanton@chromium.org
8c54a373dd
Changing the attributes of a data property implemented with
...
ExecutableAccessorInfo turns the property into a field. Better
to keep it as a callback, and correctly deal with the changed
property attributes.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/262053011
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21558 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 09:58:27 +00:00
mstarzinger@chromium.org
fd21e8f56f
Add Seq[One,Two]ByteString to runtime test generator.
...
R=dcarney@chromium.org , jkummerow@chromium.org
Review URL: https://codereview.chromium.org/303543006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21557 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 09:52:38 +00:00
yangguo@chromium.org
c3595595fb
Force inline runtime functions into its wrapper.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/307543009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21556 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 09:49:53 +00:00
verwaest@chromium.org
6b712555dd
Cleanup GetPropertyWithCallback / SetPropertyWithCallback API
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/305513004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21555 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 09:29:27 +00:00
mstarzinger@chromium.org
52cfd35fb2
Drop bogus assert after r21552.
...
R=hpayer@chromium.org
BUG=v8:2070
LOG=N
Review URL: https://codereview.chromium.org/303493005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21554 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 09:20:03 +00:00
mvstanton@chromium.org
5f7fed0134
Repairs to FLAG_pretenure_call_new.
...
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/307583002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21553 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 08:39:33 +00:00
mstarzinger@chromium.org
3812677b42
Make incremental marker post-process JSWeakCollection.
...
R=hpayer@chromium.org
BUG=v8:2070
LOG=N
Review URL: https://codereview.chromium.org/301553003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21552 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 08:35:16 +00:00
weiliang.lin@intel.com
f10204b56a
X87: Fix a typo in below CL
...
r21515 (6d0ec9a)
Convert ElementsKind into a BitField
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/301563008
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21551 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 08:21:43 +00:00
weiliang.lin@intel.com
f6ac5ae69c
X87: Small changes in preparation for Hydrogen-generated KeyedLoadGeneric
...
Port r21535(8bb4c2b)
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/302453011
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21550 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 08:19:43 +00:00
weiliang.lin@intel.com
0f2f60bd37
X87: Convert String array index/length hash to BitField.
...
Port r21533 (736c779)
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/298293007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21549 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 08:18:39 +00:00
weiliang.lin@intel.com
d5c4ad309e
X87: Merge Debugger and Debug.
...
port r21524 (af88824)
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/298193004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21548 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 08:17:21 +00:00
weiliang.lin@intel.com
2312c8abdf
X87: Avoid HeapObject check in HStoreNamedField.
...
port r21509 (78a54b0
)
Original commit message:
This way an HStoreNamedField instruction can never deoptimize
itself, which is another important step towards a working
store elimination.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/306483013
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21547 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 08:16:11 +00:00
jochen@chromium.org
6e3ffe1ca1
Extract build configuration into a separate header and move it to the base lib
...
With this, change, atomicops, once, and lazy instance are no longer dependant
on v8 core. I'll move them in a follow-up change to the libbase as well.
BUG=none
R=jkummerow@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/303463005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21546 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 08:07:18 +00:00
bmeurer@chromium.org
1102eeafe4
Reuse ZoneList memory if possible.
...
Clear() is rather wasteful for ZoneLists, because it discards
all previously allocated memory, making it impossible to reuse
until the whole Zone is released. Better use Rewind(0) in this
case, which just resets the length to zero.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/302783007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21545 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 08:06:14 +00:00
yangguo@chromium.org
5599b3a743
Fix path tracer test.
...
Path tracer is not compatible with --enable-slow-assert.
R=mstarzinger@chromium.org
BUG=v8:3350
LOG=N
Review URL: https://codereview.chromium.org/297193005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21542 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 06:42:01 +00:00
weiliang.lin@intel.com
716be75bd0
X87: Skip write barriers in the fast case when setting up local context.
...
Port r21481 (5973b48)
Original commit message:
The FastNewContextStub always allocates in new space, so we don't
need to update the write barrier when copying the parameters to
the newly allocated context.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/307433004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21541 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 04:56:28 +00:00
plind44@gmail.com
382619d3c0
MIPS: Fix improper register use in DoMinMax.
...
This fixes failure on pidigit benchmark from web-shootout
after 840 digits are calculated.
TEST=
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/300853002
Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21540 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-27 23:54:07 +00:00
plind44@gmail.com
47664dc108
MIPS: Convert String array index/length hash to BitField.
...
Port r21533 (736c779)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/297233007
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21539 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-27 17:11:33 +00:00
rossberg@chromium.org
5192a0d0d9
Fix check for empty type
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/307453005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21538 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-27 17:07:39 +00:00
plind44@gmail.com
a63ea2d3a3
MIPS: Use TempDoubleRegister.
...
Port r21517 (53d6507)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/305563002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21537 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-27 17:06:40 +00:00