Commit Graph

19061 Commits

Author SHA1 Message Date
verwaest@chromium.org
83f64e8c1f Fix escaped index JSON parsing
BUG=416449
LOG=y
R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/592813002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24125 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 15:21:19 +00:00
yurys@chromium.org
269c46ee80 Simplify synthetic roots creation in heap snapshot
The synthetic roots exist in every snapshot and there are no actual objects corresponding to them (there was attempt to create some virtual objects to reuse existing snapshot builder but it just complicated the things).

Previously synthetic root wouldn't have been added if it was empty. Current implementation always adds all synthetic roots in the snapshot no matter if they are empty or not.

BUG=None
LOG=N
R=alph@chromium.org, mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/590833002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24124 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 14:40:59 +00:00
svenpanne@chromium.org
7384467552 Further improve deopt reason output.
* Make the detailed deopt reason mandatory on x64, other platforms
  will follow in separate CLs.

* Extracted and improved jump table entry sharing logic: When
  --trace-deopt is on, we get separate entries for different deopt
  reasons. This enables us to distinguish the several reasons single
  instructions can have.

* Don't emit superfluous jump table comments: The bailout ID is still
  visible, and the jump table entry number is not interesting (but
  easy to determine if really needed).

* Unify the internal name of the jump table member across platforms.

R=jarin@chromium.org

Review URL: https://codereview.chromium.org/595513002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24123 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 14:16:38 +00:00
dcarney@chromium.org
1adad89746 [turbofan] don't call out to c
R=bmeurer@chromium.org

BUG=

Review URL: https://codereview.chromium.org/587273002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24122 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 13:56:03 +00:00
dcarney@chromium.org
dd72c26ad2 fix compile for arm64 on mavericks
R=svenpanne@chromium.org

BUG=

Review URL: https://codereview.chromium.org/592063002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24121 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 13:48:12 +00:00
mvstanton@chromium.org
6bb1340515 Make KeyedLoads from a sloppy arguments array use a handler.
Before, a custom stub was installed.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/546683003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24120 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 13:23:27 +00:00
aandrey@chromium.org
6ca218cf07 Fix DebugEvaluate on properties defined on Object.prototype
BUG=415499
R=yangguo
LOG=N

Review URL: https://codereview.chromium.org/592033002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24119 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 12:45:47 +00:00
verwaest@chromium.org
42770b1b21 Remove switch-clause limit
BUG=
R=danno@chromium.org

Review URL: https://codereview.chromium.org/582653002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24118 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 12:44:23 +00:00
verwaest@chromium.org
045fbe46b1 Pass the ast_id to HandleKeyed to make sure it's the right one (e.g., CountOperation, not just the load-expression's id)
BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/595453002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24117 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 12:43:40 +00:00
ulan@chromium.org
363619d01d Adjust small heap threshold for idle time handler.
Follow-up for r23871.

BUG=chromium:407593
LOG=N
TBR=hpayer@chromium.org

Review URL: https://codereview.chromium.org/592053002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24116 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 12:38:34 +00:00
mstarzinger@chromium.org
28385dc9c0 Fix profiler for TurboFan by reducing duplication.
R=titzer@chromium.org

Review URL: https://codereview.chromium.org/592703002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24115 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 12:32:47 +00:00
baptiste.afsa@arm.com
d7810454b7 [turbofan] Allow encodable 64-bit constants as immediate for ARM64.
Also make sure that operands order for commutative 64-bit binary operations
are properly swapped when the constant is on the left hand-side.

R=bmeurer@chromium.org
BUG=

Review URL: https://codereview.chromium.org/551543005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24114 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 12:32:23 +00:00
bmeurer@chromium.org
b62b8a8afd Fix windows build.
TBR=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/577353004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24113 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 12:14:49 +00:00
bmeurer@chromium.org
6aa1dfca0e [turbofan] Add operators for float32 support.
This adds Float32Constant, ChangeFloat32ToFloat64 and
TruncateFloat64ToFloat32 operators.

TEST=compiler-unittests
BUG=v8:3589
LOG=n
R=titzer@chromium.org

Review URL: https://codereview.chromium.org/594493002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24112 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 11:42:10 +00:00
svenpanne@chromium.org
bc609aff70 Merge RecordComment invocations into DeoptimizeIf calls.
This way the deoptimization reasons are actually threaded through to
the jump table. Tiny cleanup of related MIPS/MIPS64 code on the way.

R=jarin@chromium.org

Review URL: https://codereview.chromium.org/585423002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24111 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 09:50:12 +00:00
bmeurer@chromium.org
7862fa2ae8 [turbofan] Remove extra attributes from MachineOperatorBuilder methods.
R=titzer@chromium.org

Review URL: https://codereview.chromium.org/585413002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24110 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 09:48:26 +00:00
svenpanne@chromium.org
cebe41bd23 Emit source positions in deopt comments, too.
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/587223002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24109 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 09:05:22 +00:00
bmeurer@chromium.org
f5dcdee115 [turbofan] Bounds check when lowering JSStoreProperty.
R=titzer@chromium.org

Review URL: https://codereview.chromium.org/559653005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24105 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 07:17:13 +00:00
bmeurer@chromium.org
a314428a96 [turbofan] Disable value numbering for now.
TEST=cctest,mjsunit
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/594443002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24104 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 07:15:27 +00:00
svenpanne@chromium.org
e76254071e Introduce a class to carry around a deoptimization reason.
As discussed in https://codereview.chromium.org/582743002/, here a
mechanical refactoring...

R=jarin@chromium.org

Review URL: https://codereview.chromium.org/587623002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24103 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-22 06:36:57 +00:00
weiliang.lin@intel.com
45a7148678 X87: enable the crankshaft compiler for X87 port.
BUG=
R=weiliang.lin@intel.com

Review URL: https://codereview.chromium.org/579713002

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24102 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-20 05:08:58 +00:00
balazs.kilvady@imgtec.com
ffd7362fcc MIPS: Implement loads and calls from 'super’.
Port r24078 (b7e601f)

BUG=v8:3330
LOG=N
R=dusan.milosavljevic@imgtec.com

Review URL: https://codereview.chromium.org/586013002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24099 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 17:25:46 +00:00
jkummerow@chromium.org
78a8f1d119 Fix TRACE_GENERIC_IC coverage
R=mvstanton@chromium.org

Review URL: https://codereview.chromium.org/585983002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24098 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 16:45:59 +00:00
mstarzinger@chromium.org
d99e673582 Fix JSBuiltinReducer to deal with non-JSFunction callees.
R=titzer@chromium.org
TEST=mozilla

Review URL: https://codereview.chromium.org/589573002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24097 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 16:35:42 +00:00
verwaest@chromium.org
22cf55afc0 Internalize if not yet internalized
BUG=
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/589543002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24096 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 15:09:50 +00:00
mstarzinger@chromium.org
7765a5fd88 Add JSBuiltinReducer for inlining well-known builtins.
R=titzer@chromium.org
TEST=cctest/test-js-typed-lowering/BuiltinMathImul

Review URL: https://codereview.chromium.org/584573003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24095 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 15:02:58 +00:00
verwaest@chromium.org
40bbeef0ee Make Map::Create always use the Object function, and remove the unused inobject properties
BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/584943002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24094 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 14:59:14 +00:00
titzer@chromium.org
2af8a21b93 Fix build.
TBR=mstarzinger@chromium.org
BUG=

Review URL: https://codereview.chromium.org/591453002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24093 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 14:40:08 +00:00
titzer@chromium.org
8892385565 [turbofan] IA: Float64ToUint32 supports mem operand
BUG=
R=titzer@chromium.org

Review URL: https://codereview.chromium.org/582713002

Patch from Weiliang Lin <weiliang.lin@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24092 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 14:25:13 +00:00
verwaest@chromium.org
2d3b7f20b1 Fix test: manually call GC since 0 allocations will not cause GC
BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/587663003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24091 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 14:19:26 +00:00
verwaest@chromium.org
a04e4beb0f Fix visitor for generators
BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/589513005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24090 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 14:03:34 +00:00
weiliang.lin@intel.com
b2f5677499 X87: Implement loads and calls from 'super'.
port r24078.

orginal commit message:
   Implement loads and calls from 'super'

BUG=
R=weiliang.lin@intel.com

Review URL: https://codereview.chromium.org/581273007

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24089 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 13:44:24 +00:00
verwaest@chromium.org
e2cc4baaf3 Use the initial map of the Object function for empty object literals
BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/586673002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24088 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 13:40:38 +00:00
verwaest@chromium.org
5d0b12db8e Add fast path in MigrateFastToFast for following transitions that don't extend storage
BUG=
R=ishell@chromium.org

Review URL: https://codereview.chromium.org/588553002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24087 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 13:39:55 +00:00
machenbach@chromium.org
f7329c62ea Refactoring: Use fake cwd in release script tests.
TEST=script_test.py
R=tandrii@chromium.org
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/585893002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 13:37:34 +00:00
v8-autoroll@chromium.org
9c52d0e477 [Auto-roll] Bump up version to 3.29.80.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24084 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 13:31:59 +00:00
titzer@chromium.org
5881257344 Widen the intake valve for TurboFan.
R=danno@chromium.org, mstarzinger@chromium.org
BUG=

Review URL: https://codereview.chromium.org/582703002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24083 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 12:50:50 +00:00
jochen@chromium.org
5b2f030d82 Temporary hack to avoid PDFium crashing
I'll remove this again once PDFium has the explicit Initialize() call
as well

BUG=none
LOG=n
R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/583183002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24082 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 12:10:31 +00:00
ulan@chromium.org
32258fdcbb Annotate Heap::FindAllocationMemento for MemorySanitizer.
This function may intentionally, safely use uninitialized memory.

BUG=chromium:413232
LOG=N
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/585643002

Patch from Sergey Matveev <earthdok@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24081 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 11:32:17 +00:00
jochen@chromium.org
4bdd165fcc Remove a couple of deprecated APIs that moved to Isolate
Embedders should either pass the information to via
Isolate::CreateParams or use Isolate::SetStackLimit where appropriate

BUG=none
R=svenpanne@chromium.org
LOG=y

Review URL: https://codereview.chromium.org/584843002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24080 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 11:27:54 +00:00
ulan@chromium.org
ebf9b8ab85 ARM: Make stack limit stricter to account for large buffers in MacroAssembler.
BUG=405338
LOG=Y
R=rmcilroy@chromium.org, rodolph.perfetta@arm.com

Review URL: https://codereview.chromium.org/583163002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24079 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 11:26:36 +00:00
dslomov@chromium.org
e36aacdee2 Implement loads and calls from 'super'
R=verwaest@chromium.org, arv@chromium.org
BUG=v8:3330
LOG=N

Review URL: https://codereview.chromium.org/527963002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24078 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 11:08:04 +00:00
svenpanne@chromium.org
33ddb37ba3 Removed confusing defensive programming in GenerateJumpTable.
For a given address/type pair we should always find a deoptimization
bailout ID, otherwise something is wrong. This was already asserted on
ARM, but we now do this consistently on all platforms.

Removed some usesless naming creativity on the way.

R=jarin@chromium.org

Review URL: https://codereview.chromium.org/587473003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24077 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 11:06:59 +00:00
titzer@chromium.org
9253510f5e Fix windows warning.
TBR=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/583123003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24076 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 10:52:19 +00:00
titzer@chromium.org
b35db9c63b Fix float truncations in typed array tests.
TBR=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/577163003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24075 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 10:45:04 +00:00
titzer@chromium.org
43627e7ea8 Hack representation inference to assume current behavior of float32 loads and stores, which include implicit representation changes.
R=mstarzinger@chromium.org
BUG=

Review URL: https://codereview.chromium.org/576973003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24072 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 09:56:12 +00:00
jochen@chromium.org
e744a5ac80 Fix type in idle time undershot histogram name
TBR=hpayer@chromium.org
LOG=n
BUG=none

Review URL: https://codereview.chromium.org/587563003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24071 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 09:30:04 +00:00
weiliang.lin@intel.com
ae6a25ae4d X87: When serializer is enalbed, we disable the X87 stack check to reduce the code size.
The reason is that the big code size will leads to test-serialize test cases fail
     when debug mode and snapshot=off.

BUG=
R=weiliang.lin@intel.com

Review URL: https://codereview.chromium.org/582373002

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24070 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 09:27:45 +00:00
erik.corry@gmail.com
f1e82cc169 The --optimize-for-size flag should imply a small semi-space
R=hpayer@chromium.org, mstarzinger@chromium.org
BUG=

Review URL: https://codereview.chromium.org/585523002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 09:15:47 +00:00
jochen@chromium.org
a66600f09e Fix leak in cctest/test-heap/ReleaseStackTraceData
TBR=svenpanne@chromium.org
BUG=none
LOG=n

Review URL: https://codereview.chromium.org/585843002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24068 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 08:25:56 +00:00