bmeurer@chromium.org
51846f64db
Initial import of ChangeLowering.
...
ChangeLowering is a Reducer to lower simplified change operators
to machine subgraphs. This initial version supports ChangeBitToBool,
ChangeBoolToBit, ChangeTaggedToFloat64 and ChangeInt32ToTagged.
TEST=compiler-unittests/change-lowering-unittest
BUG=v8:3489
LOG=n
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/460593003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23068 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-12 08:24:20 +00:00
titzer@chromium.org
81047ea644
Assume signed for converting to word32/float64 unless use or output is explicitly unsigned.
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/461653002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23067 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-12 08:09:24 +00:00
titzer@chromium.org
f3ccf2d51b
Disable code generation in tests that use GraphBuilderTester on platforms that have no TF backend.
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/457343003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23066 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-12 08:06:02 +00:00
machenbach@chromium.org
727ba111a9
[Auto-roll] Bump up version to 3.28.70.0
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/466603002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23062 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-12 02:04:25 +00:00
dslomov@chromium.org
119a90b869
Fix presubmit error.
...
No idea why they suddenly started to appear.
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/458743005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23061 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 22:17:19 +00:00
dslomov@chromium.org
dc4c277589
Revert "Add "own" symbols support."
...
This reverts commit r23056 for breaking Mac x64 test.
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/460803003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23060 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 21:44:08 +00:00
machenbach@chromium.org
b50769cc54
Skip test with TF on GC stress.
...
BUG=
Review URL: https://codereview.chromium.org/465643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23059 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 19:44:33 +00:00
yangguo@chromium.org
f4d6fcda3a
Allow externalizing cons and sliced string.
...
Fulfill overdue TODO.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/460643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23058 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 19:38:01 +00:00
dslomov@chromium.org
cd30676052
ToNumber(Symbol) should throw TypeError
...
https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tonumber
Based on patch from caitp <caitpotter88@gmail.com>
https://codereview.chromium.org/454233002/
BUG=v8:3499
LOG=Y
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/458753004
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23057 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 19:24:05 +00:00
dslomov@chromium.org
88f65f2c52
Add "own" symbols support.
...
"Own" symbols are symbols that can only denote own properties of
objects.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/464473002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23056 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 18:59:38 +00:00
paul.lind@imgtec.com
fe7860fce2
MIPS: Fix test-simplified-lowering to pass without tf implemention.
...
GenerateCode() only for SupportedTarget() in 3 places, as in the
other tests here.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/459913002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23055 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 18:54:40 +00:00
machenbach@chromium.org
604c52da52
Revert "Enable C++11 tests on windows."
...
This reverts commit r23052. This sets a new landmine.
TBR=jochen@chromium.org
BUG=400033
LOG=n
Review URL: https://codereview.chromium.org/465583002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23054 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 18:28:54 +00:00
machenbach@chromium.org
f744c68936
Revert "Reland "MIPS: Add support for arch. revision 6 to mips32 port.""
...
This reverts commit r23050 for breaking runhooks on chromium.
See e.g.:
http://build.chromium.org/p/client.v8/builders/Chrome%20Linux%20Perf/builds/1438/steps/runhooks/logs/stdio
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/458983003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23053 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 16:18:49 +00:00
machenbach@chromium.org
c9d217adf5
Enable C++11 tests on windows.
...
This also adds a landmine as windows bots need a clobber.
BUG=400033
LOG=n
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/457413003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23052 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 16:10:29 +00:00
titzer@chromium.org
6fa2cee262
Move MachineRepresentation to machine-type.h and rename to MachineType in preparation for merging it with RepType.
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/456333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23051 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 15:55:28 +00:00
dusan.milosavljevic@imgtec.com
2097fa59b3
Reland "MIPS: Add support for arch. revision 6 to mips32 port."
...
Original commit r23028 breaks ARM64 build due to conflicting FP64 symbolic constant definition in src/globals.h and src/arm64/constants-arm64.h.
TEST=
BUG=
R=jkummerow@chromium.org , paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/457313003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23050 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 15:46:32 +00:00
rodolph.perfetta@arm.com
7125d6b643
ARM64: minor corrections for TF.
...
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/462573002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 15:40:11 +00:00
verwaest@chromium.org
8ece310be8
Change the type of the cache so we can check whether it is there
...
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/457333003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23048 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 14:54:15 +00:00
hpayer@chromium.org
24fceeeabb
Move store-buffer to heap and remove some unnecessary includes.
...
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/463523002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23046 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 14:22:24 +00:00
jochen@chromium.org
d5980902be
When dumping the stack, try to print contents as ASCII
...
This makes it easier to find strings that are on the stack for debugging
BUG=none
LOG=n
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/132503005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23045 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 14:16:43 +00:00
machenbach@chromium.org
943960dfd1
Skip gmock and gtest in presubmit.
...
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/454693004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 14:07:08 +00:00
yangguo@chromium.org
e566c0f4a1
Small clean up of externalizing strings.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/462643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23043 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 14:04:37 +00:00
verwaest@chromium.org
d094d0fb44
Tag all prototypes as proto, except those set using __proto__
...
BUG=
R=ishell@chromium.org , yangguo@chromium.org
Review URL: https://codereview.chromium.org/450303003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 14:00:58 +00:00
hpayer@chromium.org
9de4492497
Fix precisely sweeping asserts.
...
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/463503002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23041 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 13:45:00 +00:00
titzer@chromium.org
0425f9edd3
Fix clang build; remove dead private field.
...
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/460683003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 13:10:54 +00:00
titzer@chromium.org
6603cbb319
Remove duplication in Scheduler and simplify interface. Make ComputeSchedule() and ComputeSpecialRPO() the only interface used by clients.
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/460633002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 13:07:32 +00:00
dslomov@chromium.org
c08daece99
Replace Strings with Names in load and store ICs.
...
Mostly mechanical, the only interesting change is in KeyedLoadIC::Load, where we now handle x[symbol] in the same way we handle x['string']
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/461603002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23038 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 12:57:25 +00:00
hpayer@chromium.org
1efd68d977
Measure incremental marking speed in bytes per millisecond based on pure incremental marking steps.
...
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/463453002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 12:46:03 +00:00
machenbach@chromium.org
dd28ee3bd4
[Auto-roll] Bump up version to 3.28.68.0
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/456343003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23034 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 12:34:12 +00:00
jarin@chromium.org
1f776a07a6
Reland "More lazy deoptimization in Turbofan (binops, loads/stores)"
...
This relands commit r23029 + adds missing lazy deopts for JSAdd operator inside VisitForInStatement. The added lazy deopt still refers to a bogus bailout id, but at least the graphs can be scheduled.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/450103004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 12:26:17 +00:00
machenbach@chromium.org
4eb72d0256
Whitespace change to trigger bots.
...
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23032 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 12:14:45 +00:00
jarin@chromium.org
2558423c85
Revert "More lazy deoptimization in Turbofan (binops, loads/stores)"
...
This reverts commit r23029.
BUG=
TBR=eisinger@chromium.org
Review URL: https://codereview.chromium.org/460623002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23031 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 11:21:51 +00:00
jochen@chromium.org
152c3b809c
Revert 23028 - "MIPS: Add support for arch. revision 6 to mips32 port."
...
Breaks compilation of ARM64.
| Additional summary:
| - Introduce fp64 fpu mode into mips32 port required for r6.
| - Implement runtime detections for fpu mode and arch. revision to preserve
| compatibility with previous architecture revisions.
|
| TEST=
| BUG=
| R=jkummerow@chromium.org , paul.lind@imgtec.com
|
| Review URL: https://codereview.chromium.org/453043002
BUG=none
LOG=n
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/458193002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23030 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 11:01:06 +00:00
jarin@chromium.org
d04a7d6d91
More lazy deoptimization in Turbofan (binops, loads/stores)
...
Deoptimizing binory operations, (Load|Store)(Property|Named),
constructors.
This also fixes safepoint lookup to account for lazily deoptimized code.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/453383002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23029 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 10:42:01 +00:00
dusan.milosavljevic@imgtec.com
6c47bc726c
MIPS: Add support for arch. revision 6 to mips32 port.
...
Additional summary:
- Introduce fp64 fpu mode into mips32 port required for r6.
- Implement runtime detections for fpu mode and arch. revision to preserve
compatibility with previous architecture revisions.
TEST=
BUG=
R=jkummerow@chromium.org , paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/453043002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 10:40:25 +00:00
titzer@chromium.org
7617f0dc1b
Fix size_t/int conversions for Win64.
...
TBR=jochen@chromium.org
BUG=
Review URL: https://codereview.chromium.org/459763002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23027 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 10:06:36 +00:00
titzer@chromium.org
670df5063b
Implement representation selection as part of SimplifiedLowering. Representation selection also
...
requires inserting explicit representation change nodes to be inserted in the graph. Such nodes
are pure, but also need to be lowered to machine operators. They need to be scheduled first, to
determine the control input for any branches inside.
This CL requires extensive testing. More tests to follow.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/425003004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 09:40:02 +00:00
machenbach@chromium.org
fc87e1d477
Skip test that times out.
...
BUG=v8:3503
LOG=n
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/458133002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23025 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 09:16:14 +00:00
yangguo@chromium.org
413b20b6c1
Make %DebugPushPromise more robust wrt fuzzing.
...
If %DebugPushPromise and throwing is called outside its intended context,
we may encounter assertion failures.
R=hpayer@chromium.org
BUG=401915
LOG=N
Review URL: https://codereview.chromium.org/453933002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23023 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 07:59:10 +00:00
jarin@chromium.org
e1deee4181
Revert "Initial shot at deoptimizing JSCallFunction in Turbofan."
...
This reverts commit r23020.
BUG=
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/453363003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 07:33:58 +00:00
machenbach@chromium.org
56f0e6e1e9
[Auto-roll] Bump up version to 3.28.67.0
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/458583003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23021 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 07:04:14 +00:00
jarin@chromium.org
5c2e968bdb
Initial shot at deoptimizing JSCallFunction in Turbofan.
...
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/444883006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23020 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 06:55:16 +00:00
machenbach@chromium.org
216e6618db
Whitespace change to trigger bots.
...
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 06:44:17 +00:00
bmeurer@chromium.org
d63eec33da
Android fix for gtest.gyp.
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/453363002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23018 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-11 04:04:39 +00:00
machenbach@chromium.org
5315974b25
[Auto-roll] Bump up version to 3.28.66.0
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/451273002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23016 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-09 14:04:12 +00:00
yangguo@chromium.org
4db68f26e2
Fix GN build.
...
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/459623002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23013 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-09 10:02:42 +00:00
machenbach@chromium.org
7f156ffefa
Fix v8 landmines script.
...
Currently, some builders are in a clobber-landmine loop.
Clobber deletes the .landmines tracker (sigh). Difficult to
know if we are right after a clobber or if it is first-time
landmines deployment. Also, a landmine-triggered clobber
right after a clobber is not possible. Different clobber
methods for msvs, xcode and make all have different
blacklists of files that are not deleted.
After the branch point, all v8 branch builders have to be
manually clobbered, because the appearance of the
landmines.py script and the first landmine request are in
the same branch CL.
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/457063002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23012 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-09 08:31:01 +00:00
machenbach@chromium.org
68b933007c
Reland debug output for landmines
...
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/450873003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23011 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 18:33:58 +00:00
machenbach@chromium.org
b59ed8d062
Revert "Add temporary output to debug landmines."
...
This reverts commit 0bfb2300939fe4e540d4a2fd80a040dd689710b8.
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/452173002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 16:11:41 +00:00
machenbach@chromium.org
02d8625779
Add temporary output to debug landmines.
...
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/450353002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 16:05:19 +00:00