antonm@chromium.org
af200d0de9
Shorten bail out checks when calling code which can fail.
...
Review URL: http://codereview.chromium.org/6713004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7303 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-22 11:52:38 +00:00
whesse@chromium.org
46cf1c0b40
Fix error in test-reloc-info/Positions. This error caused a failure on Windows 64-bit V8.
...
BUG=1267
TEST=test-reloc-info/Positions
Review URL: http://codereview.chromium.org/6719022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7302 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-22 11:51:16 +00:00
sgjesse@chromium.org
63867eea60
Rename memory.h to v8memory.h
...
This is to avoid name collision with system include file named memory.h causing problems on some platforms.
Review URL: http://codereview.chromium.org/6716020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7301 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-22 11:50:39 +00:00
sgjesse@chromium.org
4a2639e7ef
Improved modulo operation in lithium as well as bailout on -0.
...
TEST=none
BUG=none
Patch by Rodolph Perfetta from ARM Ltd.
Review URL: http://codereview.chromium.org/6612017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7300 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-22 10:00:43 +00:00
mikhail.naganov@gmail.com
c316adfc2d
Trying to unskip test-profile-generator/RecordStackTraceAtStartProfiling and
...
test-cpu-profiler/CrashIfStoppingLastNonExistentProfile.
After r7293 and r7294 they might feel better.
TBR=vitalyr@chromium.org
BUG=1262,1263
TEST=none
Review URL: http://codereview.chromium.org/6676084
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7299 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-22 06:39:16 +00:00
dimich@chromium.org
02a8f3cbb9
Another Lint fix.
...
Review URL: http://codereview.chromium.org/6716012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7298 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 23:44:14 +00:00
dimich@chromium.org
e097baa280
Lint: remove line trailing whitespaces.
...
Review URL: http://codereview.chromium.org/6708070
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7297 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 23:16:06 +00:00
dimich@chromium.org
0bd52468b3
Fix Win32 bots - they crash/timeout on too long thread name.
...
Review URL: http://codereview.chromium.org/6676076
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7296 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 23:06:38 +00:00
mikhail.naganov@gmail.com
cbbe713464
Change the way sampler / profiler handle external callbacks.
...
This should fix test-profile-generator/RecordStackTraceAtStartProfiling flakinness.
R=vitalyr@chromium.org
BUG=1261
TEST=test-profile-generator/RecordStackTraceAtStartProfiling
Review URL: http://codereview.chromium.org/6708056
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7294 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 18:13:27 +00:00
mikhail.naganov@gmail.com
d98baf8098
Fix DevTools CPU profiler after isolates merge.
...
There was an obvious bug with missing call to SamplerRegistry::GetState.
I've also updated CpuProfiler to avoid stopping sampler, if it didn't started it.
R=vitalyr@chromium.org
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6712062
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7293 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 17:40:40 +00:00
karlklose@chromium.org
12615106d7
Revert r7288.
...
TBR=ager
Review URL: http://codereview.chromium.org/6709060
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7292 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 16:10:05 +00:00
vitalyr@chromium.org
b2e18ed47e
Clean up Isolate usages in handles.cc.
...
Review URL: http://codereview.chromium.org/6713070
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7291 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 16:00:52 +00:00
vitalyr@chromium.org
04537cb227
Use v8::internal threading support in samples/shell.cc.
...
We need this for isolates testing. To make it work I had to extend the
internal Thread constructor with an option to set the stack size (see
the comment in shell.cc).
BUG=1264
Review URL: http://codereview.chromium.org/6711068
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7289 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 15:04:17 +00:00
karlklose@chromium.org
93d4776d46
ARM: Add optimization for constant RHS in DoMulI.
...
Patch by ARM Ltd.
Review URL: http://codereview.chromium.org/6708025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7288 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 14:31:15 +00:00
ricow@chromium.org
4bb55fd341
Change cctests to use variant flags as part of the name for the serilization file.
...
Because we run all tests three times with different variant flags (to
test crankshaft) we might end up in a situation where we try to write
to the same serilization file from two different threads
simultaneously. The patch concats the variant flags at the end of the
serialization file name.
Review URL: http://codereview.chromium.org/6688068
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7285 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 12:57:25 +00:00
fschneider@chromium.org
8066271fd2
Optimize calls to object literal properties that are initialized with a function literal.
...
This allows fast calls and inlining of functions like:
var o = {f: function() { return "foo"; }}
o.f();
Object literals that contain function literals are initially created a dictionary mode
object and only transformed to fast properties once all properties are computed and
added. This allows us to create constant function properties for functions declared
inside the object literal. Function literals inside object literals are marked for
pretenuring so that they work as contant function properties.
Object literals without functions should just function as before.
Review URL: http://codereview.chromium.org/6240012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7283 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 12:25:31 +00:00
vitalyr@chromium.org
0dce18e6c2
Clean up Isolate usages in ast visitor and hydrogen.
...
Review URL: http://codereview.chromium.org/6688066
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7282 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 11:57:59 +00:00
vitalyr@chromium.org
b30e3388a9
Clean up Isolate usages in compilation cache.
...
Review URL: http://codereview.chromium.org/6688065
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7281 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 10:22:57 +00:00
karlklose@chromium.org
e820926108
Improve ARM-Simulator.
...
This patch
- removes the unimplemented code crash when rendering invalid/unknown instructions and prints "unknown" instead.
- prints the beginning of the constant pool marker.
- adds "da" as a shortcut for "disasm".
- print hexadecimal representation of double and single registers. This makes it easier to debug move/conversion code that uses temporary int32 values in floating point registers.
- annotates the stack with short prints of the values (HeapObjects and smis),
- makes disasm take an address or a register as second argument without a third argument, which defaults to printing ten instructions.
Review URL: http://codereview.chromium.org/6676042
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7279 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 09:59:58 +00:00
vitalyr@chromium.org
b604befe61
Always inline BitCast.
...
Review URL: http://codereview.chromium.org/6688064
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7278 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-21 09:59:29 +00:00
mmaly@chromium.org
7715206e48
Fix Xcode after isolates landing.
...
BUG=
TEST=
Review URL: http://codereview.chromium.org/6712049
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7276 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-19 02:23:59 +00:00
vitalyr@chromium.org
2d196e6393
Avoid TLS accesses in QuoteJsonString.
...
Review URL: http://codereview.chromium.org/6713056
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7275 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 23:55:11 +00:00
vitalyr@chromium.org
14216b357a
Try fix arm build.
...
Review URL: http://codereview.chromium.org/6714026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7274 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 22:47:09 +00:00
dimich@chromium.org
80268b8cbf
Update cctest expectations: ass 2 timed out tests to skip list.
...
Review URL: http://codereview.chromium.org/6713052
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7273 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 21:51:10 +00:00
dimich@chromium.org
e7fc701109
Fix Win64 build after isolates merge.
...
Need to add -DWIN32 since the include structure changed.w
Review URL: http://codereview.chromium.org/6712045
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7272 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 21:37:28 +00:00
vitalyr@chromium.org
7976ca2cbc
Merge isolates to bleeding_edge.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7271 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 20:35:07 +00:00
vitalyr@chromium.org
76e226f832
Revert r7268: it borked the history.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7269 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 19:41:05 +00:00
vitalyr@chromium.org
6ff7fdebd3
Merge isolates to bleeding_edge.
...
Review URL: http://codereview.chromium.org/6685088
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7268 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 18:49:56 +00:00
vitalyr@chromium.org
4057e679ac
Mark cctest/test-profile-generator/RecordStackTraceAtStartProfiling as flakey.
...
Review URL: http://codereview.chromium.org/6709030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7265 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 15:10:00 +00:00
lrn@chromium.org
c6e37c5dfb
Make Script.prototype.nameOrSourceURL use indexOf search first before trying to match with a RegExp.
...
This should use Boyer-Moore search with a long string, which is potentially
faster than RegExp search.
The target string is typically, but not guaranteed, at the end of the
source, so for long sources, there will be a lot of characters to skip.
Review URL: http://codereview.chromium.org/6709027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7263 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 13:40:48 +00:00
antonm@chromium.org
6f45ce4529
Revert r7258 and r7260.
...
They apparently break Threading tests on at least Mac and Win64.
TBR=vitalyr@chromium.org
Review URL: http://codereview.chromium.org/6709028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7262 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 13:24:38 +00:00
mikhail.naganov@gmail.com
d685c2ba28
Fix presumbit warning after r7259
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7261 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 12:55:53 +00:00
antonm@chromium.org
278c5d0163
Fix build.
...
TBR=vitalyr@chromium.org
Review URL: http://codereview.chromium.org/6688032
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7260 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 12:51:14 +00:00
mikhail.naganov@gmail.com
5a5dfbef56
Dramatically speed up detailed heap snapshot generation.
...
I've replaced calls to HashMap::Clear with instance re-creation.
This has sped up taking a heap snapshot of GMail from 33s -> 3s!
R=vitalyr@chromium.org
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6665038
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7259 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 12:49:27 +00:00
antonm@chromium.org
4722f692e4
Make exception thrown via v8 public API propagate to v8::TryCatch as JS thrown exceptions do.
...
Correctly process failures which can be returned by Object::GetProperty
when performing GetRealNamedProperty* queries.
Callback properties can produce exceptions so we need to wrap access to them
into exception checks. However, despite of many other methods with exception
checks, property access doesn't mandatroy go via JavaScript and hence we
need to inject code to propagate exception to public API TryCatch handlers.
Review URL: http://codereview.chromium.org/6397011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7258 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 12:33:19 +00:00
dimich@chromium.org
0f496238e4
Fix compilation on Windows post-7252
...
Review URL: http://codereview.chromium.org/6708014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7253 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 21:14:47 +00:00
mmaly@chromium.org
4cbf3478d8
Implement strict mode ThrowTypeError functions for arguments object.
...
* Reverse order of arguments in-object fields for length and callee.
* Introduce arguments ThrowTypeError functions (caller/callee).
* Create strict mode arguments boilerplate object.
* Strict mode "new arguments object" stub.
* Runtime arguments object allocation.
* Update es5conform test expectations.
Review URL: http://codereview.chromium.org/6698015/
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7252 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 20:28:41 +00:00
mmaly@chromium.org
55906eb46e
Implement fast path for strict closure creation.
...
Review URL: http://codereview.chromium.org/6677036/
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7251 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 20:28:30 +00:00
mmaly@chromium.org
1d1018aec7
Strict mode ThrowTypeError functions for
...
- function.caller
- function.arguments
Review URL: http://codereview.chromium.org/6694044/
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7250 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 20:28:17 +00:00
lrn@chromium.org
94d85de5ba
X64: Port optimization of LMulI to x64.
...
Review URL: http://codereview.chromium.org/6701003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7248 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 18:14:21 +00:00
antonm@chromium.org
6311105e00
Refactor fast API call.
...
Make it use custom call generator infrastructure.
Review URL: http://codereview.chromium.org/6686003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7246 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 17:25:54 +00:00
vitalyr@chromium.org
e26ae48786
Remove empty test/mjsunit/compiler/global-accessors.js to make lint happy.
...
Review URL: http://codereview.chromium.org/6712001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7244 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 16:12:13 +00:00
vitalyr@chromium.org
02a4ce8cb0
Emit slightly more compact code in untag double.
...
Review URL: http://codereview.chromium.org/6677111
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7243 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 15:46:42 +00:00
ricow@chromium.org
d6caa8872a
Revert revisions 7215 and 7212.
...
This caueses line positions to be off by one in certain cases, causing webkit http/tests/inspector/console-xhr-logging to fail.
Review URL: http://codereview.chromium.org/6667077
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7239 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 14:30:48 +00:00
vegorov@chromium.org
638b62fa43
Fix presubmit error introduced by r7221.
...
TBR=kmillikin@chromium.org
Review URL: http://codereview.chromium.org/6673112
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7223 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 12:36:12 +00:00
sgjesse@chromium.org
e6c7ca3642
X64: Add the global object as parameter to the GlobalReceiver instruction
...
Review URL: http://codereview.chromium.org/6674053
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7222 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 12:34:24 +00:00
vegorov@chromium.org
c83f0a715e
Make HDeoptimize to explicitly use environment values.
...
Otherwise dead phi elimination can actually remove some of the implicitly used phis.
BUG=1257
TEST=test/mjsunit/regress/regress-1257.js
Review URL: http://codereview.chromium.org/6672066
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7221 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 12:22:49 +00:00
ricow@chromium.org
e578d87a2e
Prepare push to trunk. Now working on version 3.2.4.
...
Review URL: http://codereview.chromium.org/6667074
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7218 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 12:03:20 +00:00
lrn@chromium.org
2038178fbe
Add support for unary plus in hydrogen compiler.
...
Also strength-reduction of unary minus.
Fixes issue 1248.
BUG=1248
Review URL: http://codereview.chromium.org/6685045
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7217 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 10:37:29 +00:00
sgjesse@chromium.org
1a343b3004
Fix infinite recursion in the compiler introduced in r7212
...
In most situations tests passed just causing a bailout from the compiler due to stack overflow. On Mac some tests actually did crash and of cause some benchmarks showed regressions due to this.
Review URL: http://codereview.chromium.org/6665064
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7215 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-17 09:55:57 +00:00