jkummerow@chromium.org
d7ecf0e428
Fix build (solve OBJECT_PRINT dependency)
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/373003004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22269 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-08 08:43:20 +00:00
jkummerow@chromium.org
3b9da14adf
--trace-ic: much faster and available in Release mode.
...
Also add IC tracing to a path where it was missing.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/368833003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22268 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-08 08:28:08 +00:00
hpayer@chromium.org
a0dadc8b0d
Avoid scan-on-scavenge pages during full collection.
...
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/372193002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22267 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-08 08:20:22 +00:00
marja@chromium.org
c393b9a576
Revert "Implement handling of arrow functions in the parser"
...
This reverts r22265.
Reason: ASAN tests fail.
BUG=
TBR=marja@chromium.org ,aperez@igalia.com
Review URL: https://codereview.chromium.org/372983003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22266 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-08 07:48:22 +00:00
marja@chromium.org
7367720daa
Implement handling of arrow functions in the parser
...
Arrow functions are parsed from ParseAssignmentExpression. Handling the
parameter list is done by letting ParseConditionalExpression() parse
a comma-separated list of identifiers, and it returns a tree of
BinaryOperation nodes with VariableProxy leaves, or a single
VariableProxy if there is only one parameter. When the arrow token "=>"
is found, the VariableProxy nodes are passed to ParseFunctionLiteral(),
which will then skip parsing the paramaeter list. This avoids having
to rewind when the arrow is found and restart parsing the parameter
list. Note that ParseExpression() expects parenthesized expressions
to not be empty, so checking for a closing parenthesis is added in
handling the empty parameter list "()" will accept a right-paren and
return an empty expression, which means that the parameter list is
empty.
Additionally, this adds the following machinery:
- A runtime flag "harmony_arrow_functions" (disabled by default).
Enabling "harmony" will enable it as well.
- An IsArrow bit in SharedFunctionInfo, and accessors for it.
- An IsArrow bit in FunctionLiteral, accessorts for it, and
a constructor parameter to set its value.
- In ParserBase: allow_arrow_functions() and set_allow_arrow_functions()
- A V8 native %FunctionIsArrow(), which is used to skip adding the
"function " prefix when getting the source code for an arrow
function.
R=marja@chromium.org
Review URL: https://codereview.chromium.org/160073006
Patch from Adrián Pérez de Castro <aperez@igalia.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22265 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-08 07:11:13 +00:00
yangguo@chromium.org
72441a1123
Reland "Postpone termination exceptions in debug scope."
...
BUG=v8:3408
LOG=Y
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/364813002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22262 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-08 06:57:17 +00:00
weiliang.lin@intel.com
d837dd7eb4
X87: Fix computed properties on object literals with a double as propertyname.
...
port r22255.
original commit message:
Fix computed properties on object literals with a double as propertyname.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/379513002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22261 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-08 05:48:37 +00:00
weiliang.lin@intel.com
393ccfb5a8
X87: Only create arguments-maps in the bootstrapper, remove now obsolete ValueType flag.
...
port r22245.
orginal commit message:
Only create arguments-maps in the bootstrapper, remove now obsolete ValueType flag.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/372123004
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22260 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-08 05:40:59 +00:00
weiliang.lin@intel.com
31134fafef
X87: More OStreamsUse OStreams more often
...
port r22232
original commit message:
This is a mostly mechanical CL (more than 90% Emacs macros and
query-replace-regexp) moving FILE*/StringStream*-based APIs to
OStream-based APIs. There are a few places where this had to stop,
otherwise the CL would be even bigger, but this can easily and
incrementally cleaned up later.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/379493002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22259 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-08 05:24:52 +00:00
palfia@homejinni.com
9440ed3e98
MIPS: Fix computed properties on object literals with a double as propertyname.
...
Port r22255 (cf84805)
BUG=390732
LOG=y
R=palfia@homejinni.com
Review URL: https://codereview.chromium.org/370363002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22256 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 20:28:05 +00:00
verwaest@chromium.org
ad6202d989
Fix computed properties on object literals with a double as propertyname.
...
BUG=390732
LOG=y
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/371973002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22255 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 17:08:54 +00:00
jkummerow@chromium.org
8ec78178cd
Hydrogenized KeyedLoadGeneric stub: when probing the KeyedLookupCache fails, call the runtime, don't stub-fail.
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/367343002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22254 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 16:24:51 +00:00
kilvadyb@homejinni.com
b9a0cf1925
MIPS: Only create arguments-maps in the bootstrapper, remove now obsolete ValueType flag.
...
Port r22245 (1471c64)
BUG=
R=palfia@homejinni.com
Review URL: https://codereview.chromium.org/375603002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22253 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 16:23:28 +00:00
verwaest@chromium.org
168523b542
Revert "Treat ExecutableAccessorInfo as regular data properties."
...
Temporarily revert since blink has some properties like this on the
prototype chain where it expects accessorpair-behavior (e.g.,
window.onload).
TBR=dslomov@chromium.org
BUG=
Review URL: https://codereview.chromium.org/378583002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22251 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 16:18:15 +00:00
kilvadyb@homejinni.com
ad2e1750fa
MIPS: More OStreamsUse OStreams more often.
...
Port r22232 (f837b91)
Original commit message:
This is a mostly mechanical CL (more than 90% Emacs macros and
query-replace-regexp) moving FILE*/StringStream*-based APIs to
OStream-based APIs. There are a few places where this had to stop,
otherwise the CL would be even bigger, but this can easily and
incrementally cleaned up later.
BUG=
R=palfia@homejinni.com
Review URL: https://codereview.chromium.org/373773002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22250 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 16:01:09 +00:00
dslomov@chromium.org
3f46e4b046
Revert "ARM64: Use UntagSmi helpers and clean up assertions."
...
This reverts commit r22247 for breaking Linux arm64 build.
TBR=Jacob.Bramley@arm.com
Review URL: https://codereview.chromium.org/376553006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22249 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 14:29:07 +00:00
yurys@chromium.org
6302fc6771
Add ScriptID field into ScriptOrigin class.
...
Anonymous script has empty resource name. To identify this script we need its id.
R=ulan@chromium.org , yangguo@chromium.org
Review URL: https://codereview.chromium.org/363553005
Patch from Alexey Kozyatinskiy <kozyatinskiy@google.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22248 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 14:03:20 +00:00
Jacob.Bramley@arm.com
2dd6e2af2e
ARM64: Use UntagSmi helpers and clean up assertions.
...
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/378503003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22247 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 13:58:21 +00:00
m.m.capewell@googlemail.com
45e451183e
ARM64: Generate better immediates for shifted ops
...
Improve code generated for immediate data processing operations where the shift
on the operation can be exploited to use fewer instructions for the immediate.
For example, Add(x0, x0, 0x1f7de) used to generate:
movz x16, 0xf7de
movk x16, 0x1, lsl #16
add x0, x0, x16
now generates:
movz x16, 0xfbef
add x0, x0, x16, lsl #1
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/368313002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22246 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 13:31:22 +00:00
verwaest@chromium.org
cef7b20ec0
Only create arguments-maps in the bootstrapper, remove now obsolete ValueType flag.
...
TBR=dslomov@chromium.org
BUG=
Review URL: https://codereview.chromium.org/375503008
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22245 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 13:27:37 +00:00
dslomov@chromium.org
7050e6fa06
Revert "Only create arguments-maps in the bootstrapper, remove now obsolete ValueType flag."
...
This reverts commit r22240 for breaking tests on Linux.
Revert "Remove SetOwnPropertyIgnoreAttribute uses from the bootstrapper"
This reverts commit r22241 for breaking tests on Linux.
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/371913002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22242 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 13:12:29 +00:00
verwaest@chromium.org
d400bed3e8
Remove SetOwnPropertyIgnoreAttribute uses from the bootstrapper
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/367763003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22241 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 12:31:25 +00:00
verwaest@chromium.org
1ef7582e7e
Only create arguments-maps in the bootstrapper, remove now obsolete ValueType flag.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/358363003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22240 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 12:21:01 +00:00
jkummerow@chromium.org
7cc7cd0dd1
Hydrogenized KeyedLoadGeneric stub: exhaustively search dictionary properties.
...
And call the runtime instead of stub-failing when the property isn't found.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/369893004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22239 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 11:43:02 +00:00
jkummerow@chromium.org
9d52c40932
Hydrogenized KeyedLoadGeneric stub: Fix FieldIndex::GetLoadByFieldIndex()
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/370573003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22238 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 11:35:17 +00:00
svenpanne@chromium.org
031526c58e
Another round of MSVC fixes.
...
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/378533002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22237 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 11:00:53 +00:00
verwaest@chromium.org
251ae22156
Treat ExecutableAccessorInfo as regular data properties.
...
BUG=
R=dcarney@chromium.org , mvstanton@chromium.org
Review URL: https://codereview.chromium.org/368783006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22236 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 11:00:44 +00:00
jochen@chromium.org
9230c1f3ca
Reland^3 r22105 "Remove static initializer from isolate"
...
This time:
When accessing the isolate from the sampler signal handler, don't try
to take the global lock. A sampler should only be active if there is
already an isolate on that thread, so we don't need to check whether
the TLS key is already created.
BUG=none
R=dcarney@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/378513002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22235 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 10:56:36 +00:00
svenpanne@chromium.org
d6c61b8c53
Make MSVC happy again.
...
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/371813003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22234 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 10:36:47 +00:00
jochen@chromium.org
ee9a95b3bb
Fix compilation with clang after r22208
...
R=verwaest@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/370993004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22233 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 10:00:21 +00:00
svenpanne@chromium.org
018ef484b9
More OStreamsUse OStreams more often.
...
This is a mostly mechanical CL (more than 90% Emacs macros and
query-replace-regexp) moving FILE*/StringStream*-based APIs to
OStream-based APIs. There are a few places where this had to stop,
otherwise the CL would be even bigger, but this can easily and
incrementally cleaned up later.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/363323003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22232 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 09:57:29 +00:00
rossberg@chromium.org
7aff3023ae
Avoid brittle use of .bind in Promise.all
...
R=yangguo@chromium.org
BUG=v8:3420
LOG=Y
Review URL: https://codereview.chromium.org/366103005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22231 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 09:47:43 +00:00
m.m.capewell@googlemail.com
87e0a6721c
ARM64: optimize fullcodegen pushes
...
R=bmeurer@chromium.org , ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/366083004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22230 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 09:41:04 +00:00
marja@chromium.org
c30c229898
Parser cleanup: Cached data cannot contain errors (removed dead code)
...
We no longer store the errors in cached data (see Parser::ParseProgram()) and
storing them is an unnecessary optimization. In addition, the code which
extracts errors from cached data is wrong, since it stores the result of
BuildArgs (in ReportMessageAt) and then deletes it.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/367373007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22229 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 09:31:58 +00:00
m.m.capewell@googlemail.com
fec1dd125a
Add missing include to timers
...
Library function close() needs unistd.h header included.
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/368363003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22228 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 09:29:25 +00:00
yangguo@chromium.org
a6fd4ba0b4
Wrap captureStackTrace in a try-catch when constructing an error.
...
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/370993003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22225 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 07:23:41 +00:00
jochen@chromium.org
60af0a25c7
Availability of sprintf_s is a C standard library thing, not a compiler thing.
...
Our clang/win build currently uses MSVS's C library, so it doesn't have
snprintf but it does have sprintf_s.
BUG=chromium:82385
LOG=n
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/370823002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22224 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 07:21:10 +00:00
jochen@chromium.org
6d5d4b44b5
Remove a bunch of Isolate::UncheckedCurrent calls
...
The callbacks are per isolate, so we shouldn't get the isolate implicitly
from TLS. Also, we shouldn't allow calls to these methods prior to
initializing the respective isolate (and silently ignore them).
Esp. add a per-isolate API to set the stats counter callbacks and
make it possible to set the stats counter callback after the isolate
was touched.
Embedders should use e.g. isolate->SetCounterFunction(callback) instead
of v8::V8::SetCounterFunction(callback).
BUG=none
R=svenpanne@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/365153002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22223 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 07:19:46 +00:00
bmeurer@chromium.org
29667ff172
Properly seed the RNG for cctest/test-types.
...
This was broken since r21879, as the RandomNumberGenerator constructor
does no longer look at FLAG_random_seed implicitly.
TEST=cctest/test-types
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/370973002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22222 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-07 07:04:16 +00:00
weiliang.lin@intel.com
7fe8e6ec90
X87: Error in CallFunctionNoFeedback ia32 made less efficient code
...
port r22191.
original commit message:
Error in CallFunctionNoFeedback ia32 made less efficient code
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/371543003
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22215 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-04 07:30:45 +00:00
weiliang.lin@intel.com
598e2f9fc0
X87: Start using OStreams.
...
port r22179
original commit message:
Note that until everything is OStream-based, there are a few places
where we have to do some impedance matching. A few accessors had to be
const-corrected on the way.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/370673002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22214 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-04 07:00:01 +00:00
yangguo@chromium.org
29b59adbf6
Revert "Remove unnecessary check in RegExpExecStub."
...
This reverts r22203 and r22205.
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/369063005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22211 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 20:21:00 +00:00
jarin@chromium.org
cfccf7938e
Reland "Linux perf tool support update + refactoring." (r22146, fifth attempt)
...
Bringing the offending timer functions to the platform dependent files.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/367033002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22210 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 19:18:26 +00:00
rmcilroy@chromium.org
40af47d46a
[Arm]: Enable use of extended out-of-line constant pool for Arm.
...
- Adds support to the Arm assembler to use extended constant pools.
- Update (set_)target_address_at to support extended constant pool load
updates.
- Replace Operand::is_single_instruction with Operand::instructions_required
Due to the fact that different constant pool load types require different
numbers of instructions.
- Various cleanups of ConstantPoolBuilder to cleaner integration of the
extended constant pool building.
- Update GetRelocatedValue such that offsets to both map_check and bool_load
are explicitly provided, rather than location of bool_load being inferred
based on map_check, since the code inbetween is no longer of a predictable
size.
- Update MacroAssembler::GetRelocatedValueLocation() to add support for
getting a value from an extended constant pool entry.
- Update Debug::SetAfterBreakTarget() to use target_address_from_return_address
when checking for debug breaks at constant pool load points.
- Change ConstantPoolIterateBody to iterate over both heap and code pointer in
the small section before moving onto the extended section, to work around the
requirement of the serializer that pointers are iterated in-order.
- Increase old_pointer_space SizeOfFirstPage() to offset the fact that constant
pools are now in the old pointer space (rather than code).
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/356393003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22209 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 17:01:14 +00:00
verwaest@chromium.org
5baaf3c981
Use the HeapObjectIterator to scan-on-scavenge map pages.
...
Deserializing the partial snapshot may prematurely stop using a map page, adding a free-space filler at the end. Scan-on-scavenge of map-space did not expect anything but maps, and would interpret the uninitialized memory as pointers. Using the heap iterator we can skip over free space and only visit maps.
BUG=390732
LOG=y
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/364063007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22208 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 16:55:17 +00:00
jkummerow@chromium.org
5c6d414fbc
Hydrogen LoopBuilder: add support for "while(true) {...}" loops
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/368243002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22207 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 16:33:42 +00:00
jkummerow@chromium.org
70811b5d7b
HGraphBuilder::BuildJSObjectCheck: Tighten instance type comparison
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/366083005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22206 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 16:32:23 +00:00
kilvadyb@homejinni.com
cff28953aa
MIPS: Remove unnecessary check in RegExpExecStub.
...
Port r22202 (cd07587)
BUG=v8:592
LOG=N
R=palfia@homejinni.com
Review URL: https://codereview.chromium.org/371503002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22205 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 16:22:34 +00:00
aandrey@chromium.org
952a986dd1
Introduce debug events for Microtask queue.
...
R=yangguo@chromium.org , adamk@chromium.org , rafaelw@chromium.org , rossberg@chromium.org
BUG=chromium:272416
LOG=Y
Review URL: https://codereview.chromium.org/362783002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22204 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 15:56:01 +00:00
yangguo@chromium.org
87dfaa8951
Remove unnecessary check in RegExpExecStub.
...
R=ulan@chromium.org
BUG=v8:592
LOG=N
Review URL: https://codereview.chromium.org/363313002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22202 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 14:03:10 +00:00
m.m.capewell@googlemail.com
32ce17d644
ARM64: use direct conditional branches for regexp
...
R=ulan@chromium.org , bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/370553002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22199 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 13:16:51 +00:00
m.m.capewell@googlemail.com
144c172205
ARM64: improve Adr patching
...
R=ulan@chromium.org , bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/363293004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22198 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 13:08:15 +00:00
yangguo@chromium.org
f3b9ece6a4
Revert "Reland^2 r22105 "Remove static initializer from isolate""
...
This reverts r22167.
BUG=v8:3421
LOG=N
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/366123002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22197 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 12:33:16 +00:00
kilvadyb@homejinni.com
f9a0e2eb2f
MIPS: Start using OStreams.
...
Port r22179 (01402bc)
Original commit message:
Note that until everything is OStream-based, there are a few places
where we have to do some impedance matching. A few accessors had to be
const-corrected on the way.
BUG=
R=palfia@homejinni.com
Review URL: https://codereview.chromium.org/369873002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22196 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 12:27:23 +00:00
yangguo@chromium.org
a0c10d119a
Revert "Turn old space cons strings into regular external strings (not short)."
...
This reverts commits r22192 and r22194.
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/367113003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22195 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 12:24:41 +00:00
yangguo@chromium.org
a97789d65a
Fix changed expectation in Heap::AllowToBeMigrated.
...
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/364173004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22194 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 12:01:34 +00:00
jkummerow@chromium.org
dfa8df2fdd
Fix deopt reason printing to print stub failure reason with --trace-stub-failures --code-comments
...
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/369843002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22193 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 11:47:31 +00:00
yangguo@chromium.org
6574f33d2a
Turn old space cons strings into regular external strings (not short).
...
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/368223002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22192 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 11:46:31 +00:00
mvstanton@chromium.org
bed0877111
Error in CallFunctionNoFeedback ia32 made less efficient code.
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/369503006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22191 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 11:11:39 +00:00
dcarney@chromium.org
1859b04071
add GetOwnPropertyDescriptor to api
...
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/364923006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22190 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 10:04:57 +00:00
jochen@chromium.org
c1231d426f
Add an API to pump the message loop to libplatform
...
BUG=none
LOG=n
R=marja@chromium.org
Review URL: https://codereview.chromium.org/363303002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22187 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 09:33:36 +00:00
jkummerow@chromium.org
34eb0262a9
Hydrogenized KeyedLoadGeneric stub: Fix BuildDecodeField
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/369673007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22185 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 08:58:03 +00:00
jkummerow@chromium.org
aca5038b3d
Hydrogenized KeyedLoadGeneric stub: Fix string hash retrieval
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/363293002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22184 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 08:55:42 +00:00
ishell@chromium.org
ff134a1939
Stack overflow checkers are now compatible with ASAN's detect_stack_use_after_return mode.
...
BUG=chromium:376287
BUG=chromium:376262
BUG=chromium:369962
LOG=N
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/368053002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22183 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 08:52:28 +00:00
jochen@chromium.org
7b94143287
Don't even include v8.h from libbase or libplatform
...
BUG=none
R=yangguo@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/369073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22182 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 08:50:52 +00:00
jochen@chromium.org
abb0ff205c
Buildfix for windows after r22180
...
TBR=yangguo@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/367293002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22181 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 07:57:29 +00:00
jochen@chromium.org
ca16bb7ae2
Split out libplatform into a separate libary
...
Also remove the "use default platform" compile flag. Instead, the embedder
has to provide the platform.
Change all binaries to use the default platfrom from libplatform.
Unless --job-based-sweeping is passed, nothing uses the platform yet, so
nothing will break for embedders (yet).
BUG=none
R=jkummerow@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/345903004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22180 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 07:37:27 +00:00
svenpanne@chromium.org
d7934d1fbe
Start using OStreams.
...
Note that until everything is OStream-based, there are a few places
where we have to do some impedance matching. A few accessors had to be
const-corrected on the way.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/334763003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22179 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-03 07:18:30 +00:00
ishell@chromium.org
2fba190240
One of the fast cases in JSObject::MigrateFastToFast() should not be taken if the number of fields did not change.
...
BUG=chromium:390918
LOG=N
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/363073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22174 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 19:10:19 +00:00
verwaest@chromium.org
a1dd1a262c
Revert "Remove special ExecutableAccessorInfo handling based on flag"
...
Temporarily reverting until we figure out how to handle the API cases that use accessors to lazily compute values.
dataAttributeGetterCustom in V8MessageEventCustom (at least) overwrites itself with the computed value using ForceSet. We can either force such clients to first use ForceDelete before caching, use some other caching mechanism; or provide an API for lazily computed properties.
TBR=dcarney@chromium.org
BUG=
Review URL: https://codereview.chromium.org/365903005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22173 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 16:59:04 +00:00
verwaest@chromium.org
2350d46146
Remove special ExecutableAccessorInfo handling based on flag
...
This additionally removes special "prototype" handling for O.o, since it's broken; and added test.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/368853003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22171 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 15:28:29 +00:00
kilvadyb@homejinni.com
ec349cbfed
MIPS: Clean up the global object naming madness.
...
Port r22117 (e9244d6)
BUG=
R=palfia@homejinni.com
Review URL: https://codereview.chromium.org/364863002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22170 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 15:21:28 +00:00
yangguo@chromium.org
f353ff668a
Harden Runtime_LiveEditCheckAndDropActivations against unsafe args.
...
R=jarin@chromium.org
BUG=390925
LOG=N
Review URL: https://codereview.chromium.org/362983004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22169 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 15:09:44 +00:00
kilvadyb@homejinni.com
7a8a44aaf6
MIPS: KeyedLoadIC should have same register spec as LoadIC.
...
Port r22103 (2c36867)
Original commit message:
On arm, arm64 and x64 there is a different register specification between LoadIC and KeyedLoadIC.
It would be nicer if these are the same, allowing some key optimizations.
BUG=
R=palfia@homejinni.com
Review URL: https://codereview.chromium.org/367053002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22168 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 15:09:14 +00:00
jochen@chromium.org
d8aefde617
Reland^2 r22105 "Remove static initializer from isolate"
...
Make Isolate::UncheckedCurrent() return NULL if Isolate wasn't yet initialized
to avoid reentrancy when running with the profiler
BUG=none
R=dcarney@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/365863003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22167 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 14:43:54 +00:00
yangguo@chromium.org
44d6ef37ab
Reland "Fix stack trace accessor behavior."
...
BUG=v8:3404
LOG=N
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/349033007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22166 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 14:18:10 +00:00
jochen@chromium.org
df6e1ac69e
Make flag definition macros style guide compliant and clang-format it.
...
coding style wants macros to be all upper case, and so clang-format only
detects those as macros.
BUG=none
R=jkummerow@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/259573003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22164 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 14:00:16 +00:00
wingo@igalia.com
341d61867c
Allow yield expressions without a RHS.
...
R=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/348893007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22163 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 13:48:28 +00:00
yangguo@chromium.org
a481d753d0
Stack traces exposed to Javascript should omit extensions.
...
R=marja@chromium.org
BUG=v8:311
LOG=Y
Review URL: https://codereview.chromium.org/363893003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22162 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 13:36:29 +00:00
yangguo@chromium.org
1c6f0fa6c7
Revert "Precisely sweep scan on scavenge pages and use heap iterator to iterate over them."
...
This reverts r22154.
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/365853003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22159 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 13:00:36 +00:00
hpayer@chromium.org
d4c07acd66
Wait for sweeper threads only if we have to, i.e. if we globally have to finish sweeping or if we have to allocate from a certain space.
...
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/361983003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22156 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 12:33:12 +00:00
hpayer@chromium.org
4793ec3b7e
Precisely sweep scan on scavenge pages and use heap iterator to iterate over them.
...
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/362313002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22154 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 12:19:03 +00:00
marja@chromium.org
be0d2fbe1f
Fix: Parser::HandleSourceURLComments was making gcmole unhappy (rightfully).
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/362243005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22153 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 12:01:56 +00:00
jochen@chromium.org
128086642b
Fix platform-cygwin.cc to really not use an Isolate
...
BUG=none
R=jkummerow@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/367953002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22152 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 11:22:54 +00:00
yangguo@chromium.org
b6fcac16a3
Revert "Reland "Linux perf tool support update + refactoring." (r22118)"
...
This reverts r22146.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/366883004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22150 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 10:19:35 +00:00
m.m.capewell@googlemail.com
91ba01532f
ARM64: Reland faster immediate check
...
Improve the code used to check for encodable logical immediates, fix some corner
cases associated with moving kWMinInt into W registers, and add tests.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/364653003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 09:52:23 +00:00
jarin@chromium.org
1dbeb822bd
Reland "Linux perf tool support update + refactoring." (r22118)
...
This disables the perf support in Android because of build problems with librt (should be fixable with a bit of effort, but priority is low).
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/360783006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22146 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 08:38:52 +00:00
yangguo@chromium.org
20b9b454b1
Revert "Postpone termination exceptions in debug scope."
...
This reverts r22144.
TBR=yurys@chromium.org
Review URL: https://codereview.chromium.org/369523002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22145 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 08:27:31 +00:00
yangguo@chromium.org
ed693ecae3
Postpone termination exceptions in debug scope.
...
R=yurys@chromium.org
BUG=v8:3408
LOG=Y
Review URL: https://codereview.chromium.org/353393002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22144 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 08:15:52 +00:00
yangguo@chromium.org
2adbfced35
Reland "Add mechanism to postpone interrupts selectively."
...
BUG=v8:3408
LOG=N
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/359963004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22142 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 08:05:40 +00:00
jochen@chromium.org
539c6183e3
Revert "Reland 22105 "Remove static initializer from isolate""
...
BUG=none
TBR=yangguo@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/362893006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22141 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 07:44:02 +00:00
weiliang.lin@intel.com
537b7fa325
X87: Clean up the global object naming madness.
...
port r22117
original message:
Clean up the global object naming madness.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/362943002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22140 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 07:07:22 +00:00
jochen@chromium.org
8fc4a8e1b3
Reland 22105 "Remove static initializer from isolate"
...
R=dcarney@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/367583003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22139 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 07:04:44 +00:00
jochen@chromium.org
9bbc7f038e
Re-enable the check in GetRangeConstraint() function.
...
Now that we have ASSERT() macro in src/base/logging.h we can use it in
safe_conversions_impl.h, re-enable this assertion and fix the TODO
there.
BUG=None
TEST=None
R=jochen@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/369483003
Patch from Thiago Farina <tfarina@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22138 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 07:02:39 +00:00
marja@chromium.org
7717f2366f
Handle "//# sourceURL" comments in the Parser instead of the JS.
...
BUG=v8:2948
LOG=N
R=svenpanne@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/316173002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22137 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-02 07:01:31 +00:00
hpayer@chromium.org
9bc3d1a8fe
Added a promotion queue unit test that test promotion queue memory corruption
...
by semi-space evacuation.
BUG=
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/362723003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22134 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 18:48:02 +00:00
rossberg@chromium.org
8a25b88722
Make freeze & friends ignore private properties
...
R=verwaest@chromium.org
BUG=v8:3419
LOG=Y
Review URL: https://codereview.chromium.org/355123006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22132 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 15:47:41 +00:00
ishell@chromium.org
2c94151e6e
Reland r22082 "Replace HeapNumber as doublebox with an explicit MutableHeapNumber."
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/334323003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22129 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 15:02:31 +00:00
mvstanton@chromium.org
dd676cb628
BuildGrowElementsCapacity bounds check used wrong elements kind.
...
In a refactoring, HGraphBuilder::BuildGrowElementsCapacity() ended up
using the old_elements_kind instead of new_kind when calculating if a
new capacity for an array exceeds Page::kMaxRegularHeapObjectSize.
Repair, such that the check is correct.
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/366583006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22126 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 14:52:14 +00:00
yangguo@chromium.org
be35a9e768
Revert "ARM64: Faster immediate check and fix corner cases"
...
This reverts r22120 due to build breakage of arm64.debug target.
TBR=m.m.capewell@googlemail.com
Review URL: https://codereview.chromium.org/361973002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22123 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 13:50:46 +00:00
weiliang.lin@intel.com
d8fb9b9f12
X87: KeyedLoadIC should have same register spec as LoadIC.
...
port r22103.
original commit message:
On arm, arm64 and x64 there is a different register specification between LoadIC and KeyedLoadIC.
It would be nicer if these are the same, allowing some key optimizations.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/366583002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22122 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 13:34:18 +00:00
Jacob.Bramley@arm.com
f44a6698c6
ARM64: optimize TruncateDoubleToI
...
R=ulan@chromium.org , bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/355853003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22121 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 13:33:22 +00:00
m.m.capewell@googlemail.com
95a3627609
ARM64: Faster immediate check and fix corner cases
...
Improve the code used to check for encodable logical immediates, fix some corner
cases associated with moving kWMinInt into W registers, and add tests.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/341123003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22120 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 13:25:33 +00:00
jarin@chromium.org
06e082c815
Revert "Linux perf tool support update + refactoring." (r22118).
...
Android ninja build still failing.
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/367633003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22119 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 13:12:08 +00:00
jarin@chromium.org
2b7580c2d4
Reland "Linux perf tool support update + refactoring."
...
This relands r22098.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/368433006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22118 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 12:20:21 +00:00
verwaest@chromium.org
26eae0c429
Clean up the global object naming madness.
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/352173006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22117 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 12:12:34 +00:00
verwaest@chromium.org
cf094f48e9
Improve error reporting for duplicate object template properties.
...
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/359413007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22112 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 10:00:19 +00:00
rossberg@chromium.org
28eda86ae7
Make Map.set() and Set.add() chainable
...
From the Harmony draft:
https://people.mozilla.org/~jorendorff/es6-draft.html#sec-map.prototype.set
https://people.mozilla.org/~jorendorff/es6-draft.html#sec-weakmap.prototype.set
https://people.mozilla.org/~jorendorff/es6-draft.html#sec-set.prototype.add
https://people.mozilla.org/~jorendorff/es6-draft.html#sec-weakset.prototype.add
BUG=v8:3410
R=arv@chromium.org , rossberg@chromium.org
Review URL: https://codereview.chromium.org/359173002
Patch from caitp <caitpotter88@gmail.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22111 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 09:49:25 +00:00
jochen@chromium.org
3c62545377
Move libplatform files into v8::platform namespace
...
BUG=none
R=jkummerow@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/336313017
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22107 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 08:15:09 +00:00
jochen@chromium.org
9acb3bcbb2
Revert 22105 "Remove static initializer from isolate"
...
Fails to run on mac
BUG=none
LOG=n
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/368503003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22106 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 07:07:50 +00:00
jochen@chromium.org
bb169b93ae
Remove static initializer from isolate
...
We don't have a default isolate anymore, so we can just create the
thread data and keys on demand
BUG=none
R=dcarney@chromium.org , svenpanne@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/337603010
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22105 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 06:43:14 +00:00
jochen@chromium.org
2e1a6ba72a
Revert 22098 "Linux perf tool support update + refactoring."
...
GetCurrentThreadId doesn't compile on android
Also reverts follow up build fix attempts
BUG=none
LOG=n
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/337093005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22104 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 17:21:35 +00:00
mvstanton@chromium.org
351ed4c8a1
KeyedLoadIC should have same register spec as LoadIC.
...
On arm, arm64 and x64 there is a different register specification between LoadIC and KeyedLoadIC.
It would be nicer if these are the same, allowing some key optimizations.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/338963003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22103 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 15:56:50 +00:00
jochen@chromium.org
846dc0f46f
Fix perfjit printf format for filename
...
TBR=jarin@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/357333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22102 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 15:39:19 +00:00
jochen@chromium.org
584f13ab03
Add missing cpu.h includes to mips/x87
...
BUG=none
TBR=yangguo@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/358073005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22101 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 15:37:07 +00:00
rossberg@chromium.org
7b04a68d23
ES6: Add missing Set.prototype.keys function
...
https://people.mozilla.org/~jorendorff/es6-draft.html#sec-set.prototype.keys
The value of the keys property is just the initial value of the values
function.
BUG=v8:3411
LOG=Y
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/353293003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22099 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 14:37:07 +00:00
jarin@chromium.org
1f338fa2e8
Linux perf tool support update + refactoring.
...
This adds timestamps to allow profiling with code space reuse. Also a couple of updates to reflect the changes in the JIT perf interface + a move of the perf-related stuff into separate files.
Unfortunately, the change only works with the latest patch to the perf tool from a Linux perf tool contributor (Stephane Eranian).
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/255803003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22098 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 14:35:58 +00:00
jochen@chromium.org
4c7e259eb4
Fix external snapshot compilation
...
TBR=yangguo@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/341433005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22097 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 14:26:40 +00:00
rossberg@chromium.org
66355db6b6
Rip out unused inner_scope_contains_with flag
...
R=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/349033006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22096 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 13:59:00 +00:00
verwaest@chromium.org
6ff2a77364
Wrap InitializeProperty around SetOwnPropertyIgnoreAttributes and switch over uses
...
This is a step in the direction of disentangling all uses of SetOwnPropertyIgnoreAttributes so we can provide a more specific implementation for those usecases, and reduce the capabilities of those clients, avoiding subtle bugs.
InitializeProperty only supports adding properties to extensible objects that do not contain the property yet. JSGlobalProxies cannot have properties themselves, so are not supported either.
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/352813002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22095 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 13:48:57 +00:00
jochen@chromium.org
7f6e65a283
Fix compilation on arm after r22092
...
TBR=yangguo@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/360723002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22094 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 13:47:20 +00:00
marja@chromium.org
570a0bf8f5
Parser: add usage counters for "use asm".
...
R=jochen@chromium.org
BUG=
Review URL: https://codereview.chromium.org/336863007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22093 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 13:35:16 +00:00
jochen@chromium.org
a4506cd3f2
Move platform abstraction to base library
...
Also split v8-core independent methods from checks.h to base/logging.h and
merge v8checks with the rest of checks.
The CPU::FlushICache method is moved to CpuFeatures::FlushICache
RoundUp and related methods are moved to base/macros.h
Remove all layering violations from src/libplatform
BUG=none
R=jkummerow@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/358363002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22092 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 13:25:46 +00:00
yangguo@chromium.org
5d408ee73d
Revert "Fix stack trace accessor behavior."
...
This reverts r22089.
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/360033002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22091 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 13:16:42 +00:00
hpayer@chromium.org
fd45684878
Waiting for sweeper threads is last resort in SlowAllocateRaw.
...
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/356403002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22090 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 12:39:06 +00:00
yangguo@chromium.org
e1d80e2858
Fix stack trace accessor behavior.
...
R=verwaest@chromium.org
BUG=v8:3404
LOG=N
Review URL: https://codereview.chromium.org/343563009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22089 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 11:48:20 +00:00
yangguo@chromium.org
f6c4178aa7
Introduce debug events for promises.
...
R=aandrey@chromium.org , rossberg@chromium.org
BUG=v8:3093
LOG=Y
Review URL: https://codereview.chromium.org/357603005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 11:12:42 +00:00
rmcilroy@chromium.org
7aa8cb462f
[Arm]: Make Assembler::movw only emit a movw instruction.
...
Currently Assembler::movw is really the mov macro instruction, leading to raw
emit calls to generate the real movw instruction. Replace all calls of mow
with the mov macro instruction (which will emit a movw if appropriate) and
make movw always emit movw.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/329233002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22085 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 11:07:28 +00:00
rmcilroy@chromium.org
c1e6743739
[Arm]: Fix liveedit support if --enable_ool_constant_pool is true.
...
If the out of line constant pool is enabled, there is an extra value on the stack frame (the
constant pool pointer). This change fixes GenerateFrameDropperLiveEdit to pull the function
pointer and pop the stack frame correctly whether or not the constant pool pointer is on the
frame.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/338053003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22084 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 11:06:03 +00:00
ishell@chromium.org
d1190c503d
Revert "Replace HeapNumber as doublebox with an explicit MutableHeapNumber."
...
This reverts commit r22082 for breaking arm64 build.
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/360023003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22083 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 10:19:31 +00:00
ishell@chromium.org
cea1824f58
Replace HeapNumber as doublebox with an explicit MutableHeapNumber.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/355793003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22082 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 09:44:43 +00:00
mstarzinger@chromium.org
b7d3d51a62
Remove kDontInline and simplify compiler hints.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/359733004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22081 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 08:59:23 +00:00
danno@chromium.org
75050d8ccc
Use simple keyed store again in ArrayPush_JS_Builtin
...
This reverts the change of array.js in r20839 and recovers 38%
performance regression of DOM-Search case in Browsermark2.0. There is
no performance impact on JavaScript benchmarks (Octane, Kraken and
SunSpider).
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/353953002
Patch from Weiliang Lin <weiliang.lin@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22080 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 08:39:04 +00:00
hpayer@chromium.org
21ea58591a
Set promotion queue limit before migrating object.
...
BUG=
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/357263004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22079 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 08:02:38 +00:00
yangguo@chromium.org
965f7037c8
Revert "Add mechanism to postpone interrupts selectively."
...
This reverts commit r22073.
TBR=yurys@chromium.org
Review URL: https://codereview.chromium.org/362493002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22074 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 06:45:23 +00:00
yangguo@chromium.org
326bc2a533
Add mechanism to postpone interrupts selectively.
...
BUG=v8:3408
LOG=N
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/359723005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22073 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 06:27:20 +00:00
danno@chromium.org
9176485c8b
Support non-internalized string key lookups in Hydrogen KeyedLoadIC
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/356213003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22070 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-28 00:33:04 +00:00
verwaest@chromium.org
6f23139659
Cannot check the interceptor since it may not be ready yet.
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/353143003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22067 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 15:34:18 +00:00
verwaest@chromium.org
a80b14ab93
Port the ic part
...
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/354173002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22066 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 14:01:42 +00:00
verwaest@chromium.org
8945c69855
Don't leak the global object in the Function constructor.
...
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/359713005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22065 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 13:50:37 +00:00
verwaest@chromium.org
63431b23d1
Split SetProperty(...attributes, strictmode) into DefineProperty(...attributes) and SetProperty(...strictmode)
...
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/351853005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22064 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 13:48:37 +00:00
yangguo@chromium.org
0133d96be3
Remove script collected debug event.
...
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/358873005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22063 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 12:10:43 +00:00
jochen@chromium.org
f4ede82c98
Remove remaining dependencies on allocation.h from a few platform files
...
I could move parts of allocation to base/ instead, but I see little to
no value in the allocation base classes, soo..
BUG=none
R=bmeurer@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/351683009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22062 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 11:37:09 +00:00
mstarzinger@chromium.org
5e738b77dc
Remove the duplicated file include.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/352223007
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22061 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 11:07:44 +00:00
mstarzinger@chromium.org
7a4054b7d7
Allow inlining of functions containing %_Arguments.
...
R=svenpanne@chromium.org
TEST=mjsunit/compiler/inline-arguments
Review URL: https://codereview.chromium.org/356773002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22060 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 11:04:35 +00:00
svenpanne@chromium.org
0be40ff5a5
Unbreak Mac build.
...
TBR=marja@chromium.org
Review URL: https://codereview.chromium.org/356153006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22059 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 11:02:18 +00:00
svenpanne@chromium.org
aac4a062d4
Unbreak "os" stuff in shared d8 builds.
...
Note that "os" still has no properties on Windows, but at least it's there.
BUG=v8:3407
LOG=y
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/356843005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22058 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 10:37:42 +00:00
Jacob.Bramley@arm.com
a3c2da4dc4
ARM64: avoid duplicate load of double constants
...
R=bmeurer@chromium.org , ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/357973002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22051 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 09:00:31 +00:00
marja@chromium.org
3d9080a50f
Revert "ARM: Use the shifter operand to merge in previous shift instructions."
...
This reverts r 22017
Reason: broke Nexus 7 GPU bots (see crbug.com/389198)
BUG=389198
LOG=n
TBR=machenbach@chromium.org , ulan@chromium.org
Review URL: https://codereview.chromium.org/359713004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22050 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 08:55:41 +00:00
svenpanne@chromium.org
e25f833496
Added slim versions of output streams.
...
R=bmeurer@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/352823003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 08:42:17 +00:00
jochen@chromium.org
1600681420
Remove dependency from platform files on v8.h
...
Pass flag values in through a central initialize call.
We still depend on utils.h for RoundUp and IsAligned.
BUG=none
R=bmeurer@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/353113003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22048 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 08:38:56 +00:00
weiliang.lin@intel.com
092389bb33
X87: Use IC register definitions in platform files.
...
port r22035
original commit message:
Use IC register definitions in platform files.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/356133005
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 03:23:31 +00:00
palfia@homejinni.com
903b94d4d2
MIPS: Use IC register definitions in platform files.
...
Port r22035 (0eac506)
BUG=
R=palfia@homejinni.com
Review URL: https://codereview.chromium.org/354013003
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 21:03:09 +00:00
yurys@chromium.org
0339d069d9
Add OnCompileError handler and v8::CompileError debug event.
...
This event is generated when the parser can not generate code.
R=vsevik@chromium.org , yangguo@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/264333007
Patch from Alexey Kozyatinskiy <kozyatinskiy@google.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22043 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 16:03:52 +00:00
yurys@chromium.org
013bb22cca
Remove unused Debug::AfterCompileFlags flags.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/353823004
Patch from Alexey Kozyatinskiy <kozyatinskiy@google.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 15:12:04 +00:00
yangguo@chromium.org
310c37bd43
Fix regexp=interpreted build.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/350633003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22041 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 13:48:22 +00:00
hpayer@chromium.org
a511695bb5
Added more detailed sweeping timing counters.
...
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/331053003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 12:56:14 +00:00
rossberg@chromium.org
cb2419c615
Infer whether a variable is assigned in inner functions
...
R=titzer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/345573002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 11:59:42 +00:00
mstarzinger@chromium.org
1824edd6bc
Reland "Allow inlining of functions containing %_ArgumentsLength."
...
The layout test failures were unrelated to this change.
R=svenpanne@chromium.org
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/355993002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22038 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 11:55:31 +00:00
ulan@chromium.org
7f5c66b26b
Keep CodeRange::current_allocation_block_index_ in range after r21869.
...
BUG=305878,388328
LOG=N
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/354003003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22037 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 11:49:39 +00:00
mvstanton@chromium.org
4273c7c070
Use IC register definitions in platform files.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/356713003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 10:00:36 +00:00
ishell@chromium.org
37651f4f01
Avoid adjusting live bytes in JSObject::MigrateFastToFast() if the size delta is zero.
...
BUG=chromium:388880
LOG=N
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/333903003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22031 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 08:34:34 +00:00
weiliang.lin@intel.com
2c45989333
X87: Cleanup CallInterfaceDescriptor
...
port r22014
original commit message:
Make CallInterfaceDescriptor work like CodeStubInterfaceDescriptor, owning it's
register and representation arrays. This also eliminates a host of TSAN warnings
xfor static arrays
This CL depends on https://codereview.chromium.org/352583002 landing first
(a conceptual dependency at least).
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/343563006
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22030 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 07:32:17 +00:00
yangguo@chromium.org
a2d15ce518
Compile optimized code with active debugger but no break points.
...
R=ulan@chromium.org
BUG=386492
LOG=Y
Review URL: https://codereview.chromium.org/356713004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22029 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 06:32:51 +00:00
weiliang.lin@intel.com
8ff53a8d62
X87: The IC exposes a register definition.
...
port r22011
original commit message:
Centralize a register definition in an IC that provides:
1) symbolic names for the register (like, edx == receiver)
2) defines ordering when passed on the stack
Code that implements or uses the IC should use this definition instead of "knowing" what the registers are. Or at least have the definition to validate it's assumptions.
As a side effect of avoiding runtime static initializers (enforced by tools/check-static-initializers.sh, neat), I gave ownership of the registers array to CodeStubInterfaceDescriptor. This prompted a cleanup of that struct
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/358773002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 05:43:16 +00:00
danno@chromium.org
8313c523b3
Optimize Map/Set.prototype.forEach
...
Instead of using an iterator result object and an entries array
(for Map) we introduce a new runtime function that uses an array
as an out param.
On the Map ForEach perf test this leads to a 2.5x performance
improvement. On the overall Map and Set tests this leads to a 18%
and 13% improvement respectively.
BUG=None
LOG=Y
R=danno@chromium.org
Review URL: https://codereview.chromium.org/355663002
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22027 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 00:40:45 +00:00
kilvadyb@homejinni.com
53c540a033
MIPS: Fix r22021 “The IC exposes a register definition.” after r22018.
...
BUG=
R=palfia@homejinni.com
Review URL: https://codereview.chromium.org/344543004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 19:30:48 +00:00
kilvadyb@homejinni.com
73fc21c40d
MIPS: Cleanup CallInterfaceDescriptor.
...
Port r22014 (234866c)
Original commit message:
Make CallInterfaceDescriptor work like CodeStubInterfaceDescriptor, owning it's
register and representation arrays. This also eliminates a host of TSAN warnings
for static arrays.
This CL depends on https://codereview.chromium.org/352583002 landing first
(a conceptual dependency at least).
BUG=
R=palfia@homejinni.com
Review URL: https://codereview.chromium.org/356773003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22023 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 18:43:06 +00:00
mstarzinger@chromium.org
70891ddf32
Revert "Allow inlining of functions containing %_ArgumentsLength."
...
This cuased layout test failures.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/349923009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 17:21:44 +00:00
kilvadyb@homejinni.com
55126885b7
MIPS: The IC exposes a register definition.
...
Port r22011 (be22370)
Original commit message:
Centralize a register definition in an IC that provides:
1) symbolic names for the register (like, edx == receiver)
2) defines ordering when passed on the stack
Code that implements or uses the IC should use this definition instead of "knowing" what the registers are. Or at least have the definition to validate it's assumptions.
As a side effect of avoiding runtime static initializers (enforced by tools/check-static-initializers.sh, neat), I gave ownership of the registers array to CodeStubInterfaceDescriptor. This prompted a cleanup of that struct.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/354863002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22021 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 16:17:31 +00:00
mstarzinger@chromium.org
ace9759359
Allow inlining of functions containing %_ArgumentsLength.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/355833002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22020 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 16:02:49 +00:00
ulan@chromium.org
c266cd91e0
Collect garbage with kReduceMemoryFootprintMask in IdleNotification.
...
BUG=350720
LOG=Y
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/345263004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 15:29:58 +00:00
danno@chromium.org
eaca750b29
Remove distinction between hidden and normal runtime functions
...
R=jkummerow@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/346413004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22018 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 15:26:10 +00:00
alexandre.rames@arm.com
a7408e5124
ARM: Use the shifter operand to merge in previous shift instructions.
...
When possible, we transform sequences of code of the form
lsl r1, r2, #imm
add r0, r5, r1
into
add r0, r5, r2 LSL #imm
This is an adaptation of r21161.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/312173002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22017 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 15:11:00 +00:00
mvstanton@chromium.org
8f905ee9fd
Cleanup CallInterfaceDescriptor
...
Make CallInterfaceDescriptor work like CodeStubInterfaceDescriptor, owning it's
register and representation arrays. This also eliminates a host of TSAN warnings
for static arrays.
This CL depends on https://codereview.chromium.org/352583002 landing first
(a conceptual dependency at least).
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/350293003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22014 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 12:52:58 +00:00
yangguo@chromium.org
7e9fc63d66
Reorder full code for while loops to better reflect statement positions.
...
R=jkummerow@chromium.org
BUG=v8:2047
LOG=N
Review URL: https://codereview.chromium.org/353823002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22013 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 12:42:28 +00:00
jkummerow@chromium.org
0bf430c1d6
Better fix for --trace-ic source positions: Use HOptimizedGraphBuilderWithPositions
...
This reverts the changes made in r22008.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/355823003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22012 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 12:37:06 +00:00
mvstanton@chromium.org
addd35df56
The IC exposes a register definition.
...
Centralize a register definition in an IC that provides:
1) symbolic names for the register (like, edx == receiver)
2) defines ordering when passed on the stack
Code that implements or uses the IC should use this definition instead of "knowing" what the registers are. Or at least have the definition to validate it's assumptions.
As a side effect of avoiding runtime static initializers (enforced by tools/check-static-initializers.sh, neat), I gave ownership of the registers array to CodeStubInterfaceDescriptor. This prompted a cleanup of that struct.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/352583002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22011 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 12:32:12 +00:00
mstarzinger@chromium.org
8a35e9ce47
Drop obsolete dont_optimize compiler hint.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/354813003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 12:12:21 +00:00
jkummerow@chromium.org
bb9d85e78e
Fix --trace-ic position information for LoadICs and StoreICs in optimized code
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/352663002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22008 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 12:06:03 +00:00
hpayer@chromium.org
51b189a27c
Wait for sweeper threads when expansion of old generation fails.
...
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/351013002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22007 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 10:53:00 +00:00
wingo@igalia.com
3454a45f5d
Test that trailing commas in object literals are allowed
...
ES6 will allow trailing commas in object literals. It turns out that V8
already allowed it, too, as does JSC and SpiderMonkey.
R=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/350353002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 10:13:10 +00:00
ulan@chromium.org
6a5ab4b2d0
Grow heap slower if GC freed many global handles.
...
BUG=263503
LOG=Y
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/352763002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22003 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 09:36:45 +00:00
hpayer@chromium.org
a2f85d6c35
Promotion is the backup strategy when semi-space copy fails and vice versa.
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/356613004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22002 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 09:31:25 +00:00
yangguo@chromium.org
3247a71c78
Do not unnecessarily expose execution state in debug event data.
...
When we fire a debug event, we create duplicate execution state objects,
one as argument for the debug event listener, one as property on the
debug event data object. The latter is never used by chrome.
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/355793002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 09:13:09 +00:00
wingo@igalia.com
bf8e802f1a
Add @@iterator, .entries(), .values(), .keys() support to typed arrays
...
R=arv@chromium.org , rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/336403002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 08:46:53 +00:00
jochen@chromium.org
c0dd51efdb
Remove dependency from platform.h implementations on isolate
...
BUG=none
R=bmeurer@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/347223004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21997 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 08:20:42 +00:00
wingo@igalia.com
699bc8f73d
Add @@iterator support for strings
...
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/335423002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21994 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 07:43:14 +00:00
wingo@igalia.com
f6dfa63c9d
Add @@iterator to Array.prototype
...
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/338323003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21993 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 07:32:57 +00:00
marja@chromium.org
31ab363c82
Revert "Update survival statistics correctly in the Scavenger."
...
This reverts r21991.
Reason: lots of test failures.
BUG=
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/352083002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21992 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 07:20:13 +00:00
hpayer@chromium.org
661630f589
Update survival statistics correctly in the Scavenger.
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/351893003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21991 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 06:29:36 +00:00
kilvadyb@homejinni.com
1c4621848e
MIPS: optimize Lithium Allocate.
...
Port r21968 (f6c757c)
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21988 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 16:53:25 +00:00
rodolph.perfetta@arm.com
83ee347736
ARM64: fix operator precedence issue.
...
As a result the constant pool marker was always 0.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/350923003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21987 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 16:20:44 +00:00
alph@chromium.org
65e585fa38
CPU profiler: increase the max number of captured frames.
...
LOG=N
R=jkummerow@chromium.org , loislo@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/357443003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21986 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 16:00:51 +00:00
ishell@chromium.org
80e1bf42e5
More Map methods moved to private part.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/350023002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21985 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 15:56:36 +00:00
ishell@chromium.org
ae1aaf7c76
Making MigrateToMap() a single bottleneck for all migrations except slow-to-fast case.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/346743005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21984 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 15:28:29 +00:00
ishell@chromium.org
220fa8ea08
More set_map() calls replaced with MigrateToMap().
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/338793004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 14:53:48 +00:00
hpayer@chromium.org
776a65684a
Promote objects if semi-space copy fails while scavenging.
...
BUG=388188
LOG=N
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/351853006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21980 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 14:30:22 +00:00
jochen@chromium.org
0323525d1b
Initialize the Isolate's use_counter_callback_ member
...
BUG=none
R=marja@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/345363003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21975 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 14:13:15 +00:00
marja@chromium.org
62ffc7de20
New try: Parser: Delay internalizing strings and values
...
This is a reincarnation of r21841.
The previous try was https://codereview.chromium.org/314603004/ but it regressed
JSBench and morejs.
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/335293004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 14:03:24 +00:00