palfia@homejinni.com
a7be047223
MIPS: remove old style callbacks
...
Port r16354 (559bc02d)
BUG=
Review URL: https://codereview.chromium.org/23479007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16370 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 22:51:37 +00:00
yurys@chromium.org
dc670f4412
Remove implementation of CpuProfileNode methods deprecated in v8 3.20
...
GetTotalTime, GetSelfTime and GetTotalSamplesCount were deprecated in 3.20 (https://code.google.com/p/v8/source/browse/branches/3.20/include/v8-profiler.h ) and can be safely removed.
BUG=None
R=bmeurer@chromium.org , loislo@chromium.org
Review URL: https://codereview.chromium.org/23554002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16367 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 15:12:04 +00:00
bmeurer@chromium.org
5857d951dd
Fix definition of V8_*_C() macros.
...
Make V8_INT64_C() and V8_UINT64_C() available in 32-bit mode as well,
so we can write readable constants (base 10) instead of having to
obfuscate them using V8_2PART_UINT64_C().
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/23557002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16366 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 14:16:34 +00:00
haitao.feng@intel.com
b2ca7e0b0a
Introduce SmiValuesAre31Bits and SmiValuesAre32Bits global predicate functions
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/22350005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16365 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 14:13:40 +00:00
jkummerow@chromium.org
6be4e9455e
Fixed HMul::Canonicalize() to support SMI
...
Same idea for HDiv when the right oeprand is 1
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/23176002
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16364 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 14:09:26 +00:00
bmeurer@chromium.org
6b760b92a3
Drop platform-nullos stuff, which was already horribly out-of-date for a long time.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/23434004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16363 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 14:04:49 +00:00
verwaest@chromium.org
6479ea3379
Eliminate Smi check when changing from Smi to Integer32
...
BUG=
R=verwaest@chromium.org
Review URL: https://chromiumcodereview.appspot.com/22824003
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16362 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 14:02:08 +00:00
verwaest@chromium.org
788811244e
Eliminate intentional conversion from Smi to Int32 in HMul
...
If not all uses of arithmetic binary operation can be truncated to Smi, check if they can be truncated to Int32 which could avoid minus zero check
Fixed DoMulI on X64 to adopt correct operand size when the representation is Smi
Fixed DoMulI on ARM. Constant right operand optimization is based on Integer 32 instead of its representation.
BUG=
R=verwaest@chromium.org
Review URL: https://chromiumcodereview.appspot.com/22600005
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16361 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 13:55:00 +00:00
dcarney@chromium.org
f55ba6b70a
cleanup api callbacks now that handles are never returned directly
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23588002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16360 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 13:41:44 +00:00
hpayer@chromium.org
6379e5dc41
Eliminated manual allocation folding in BuildCloneShallowArray.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23038003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16359 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 13:39:52 +00:00
hpayer@chromium.org
9d8684f8de
Fix Cluster Fuzz stack frame corruption bug.
...
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/23596002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16358 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 13:31:15 +00:00
hpayer@chromium.org
9f8f0c6d45
Prefill allocated objects with one word fillers if we do not use allocation folding.
...
BUG=
R=mstarzinger@chromium.org , titzer@chromium.org
Review URL: https://codereview.chromium.org/22903027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16357 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 12:03:56 +00:00
mvstanton@chromium.org
7fea193609
Convert FastNewClosureStub into hydrogen.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/22562002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16356 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 11:55:08 +00:00
hpayer@chromium.org
dc6a16d6e0
Filler sizes have to be Smis, fix x64 breakage.
...
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/23577002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16355 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 11:51:03 +00:00
dcarney@chromium.org
166b6d0747
remove old style callbacks
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23513004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16354 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 11:47:52 +00:00
jkummerow@chromium.org
da037f9872
H-BuildIncrement should make use of available type feedback
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/22611009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16353 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 11:44:45 +00:00
machenbach@chromium.org
3cf14cf6cc
Add correct test case to nacl skip list.
...
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/23569002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16352 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 10:04:19 +00:00
bmeurer@chromium.org
09f5042adf
Add V8_NOINLINE() and define INLINE()/NO_INLINE() in terms of their V8_*() counterparts.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/23414003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16351 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 09:21:16 +00:00
mstarzinger@chromium.org
93ff0d164f
Fix --trace-hydrogen --enable-slow-asserts combination.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/23295035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16350 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 08:49:27 +00:00
svenpanne@chromium.org
db3d56e029
Minor cleanups, hopefully fixing an issue with VC's /Ze option on the way.
...
BUG=2859
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/23553002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16349 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 08:47:05 +00:00
machenbach@chromium.org
3dff01ad39
Skip failing test for NaCl.
...
The test was added in 16322 and fails on NaCl ever since.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/23479003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16348 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 08:29:31 +00:00
bmeurer@chromium.org
2f10268045
Fix test for warn_unused_result and move it to v8config.h.
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23546002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16347 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 08:27:42 +00:00
hpayer@chromium.org
3ed8601860
Added allocation folding support for old space allocations.
...
BUG=
R=mstarzinger@chromium.org , titzer@chromium.org
Review URL: https://codereview.chromium.org/22378003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16346 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 07:42:23 +00:00
haitao.feng@intel.com
a6d17b4fb5
Introduce StackArgumentsAccessor class for X64
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/21123008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16345 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-27 01:21:39 +00:00
adamk@chromium.org
432faaefb7
Revert "This patch implements optimized objectInfo structure which manages the set of observers associated with an object and the changeRecord types which they accept."
...
This reverts r16343 due to mjsunit object-observe failures on several bots:
- V8 Linux nosse2
- V8 GC stress 2
TBR=rossberg
Review URL: https://codereview.chromium.org/23491002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16344 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 22:45:10 +00:00
adamk@chromium.org
bf42ded40d
This patch implements optimized objectInfo structure which manages the set of observers associated with an object and the changeRecord types which they accept.
...
Observation in the normal case (Object.observe, default accept types, one observer) now allocates fewer objects and unobservation no longer needs to scan and splice an InternalArray -- making the combined speed of observe/unobserve about 200% faster.
This patch implements the following optimizations:
-objectInfo is initially created without any connected objects or arrays. The first observer is referenced directly by objectInfo, and when a second observer is added, changeObservers converts to a mapping of callbackPriority->observer, which allows for constant time registration/de-registration.
-observer.accept and objectInfo.performing are conceptually the same data-structure. This is now directly represented as an abstract "TypeMap" which can later be optimized to be a smi in common cases, (e.g: https://codereview.chromium.org/19269007/ ).
-objectInfo observers are only represented by an object with an accept typeMap if the set of accept types is non-default
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/19541010
Patch from Rafael Weinstein <rafaelw@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16343 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 21:37:21 +00:00
palfia@homejinni.com
b2c931d093
MIPS: Add a trap_on_abort flag.
...
Port r16319 (22e0380)
Original commit message:
By setting this flag assertions behind --debug-code will trigger a
breakpoint instead of a call into Abort. This eases debugging, as the
call site is less cluttered and the backtrace starts where it should.
BUG=
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16342 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 20:29:54 +00:00
mstarzinger@chromium.org
fc68cb74e5
Add RemovePrototype to FunctionTemplate
...
This allows functions created from a FunctionTemplate to not have a
prototype property, which is required by DOM methods.
R=mstarzinger@chromium.org
BUG=chromium:272440
Review URL: https://codereview.chromium.org/22990003
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16341 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 17:40:03 +00:00
mstarzinger@chromium.org
fcdf3bdb77
Factor out HSimulate::ReplayEnvironment.
...
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/23005027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16340 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 17:30:41 +00:00
jkummerow@chromium.org
c7e262dc63
Prepare push to trunk. Now working on version 3.21.5.
...
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/23205034
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16337 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 17:11:27 +00:00
jkummerow@chromium.org
caba24c813
Revert "Snapshot i18n Javascript code" and "Fix mjsunit/debug-script after r16298".
...
This reverts r16298 and r16303 due to ChromeOS browser_tests failures ("Uncaught ReferenceError: Boolean is not defined" in --gtest_filter="FileDisplay/FileManagerBrowserTest.Test/0" and others)
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23414008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16336 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 17:00:58 +00:00
jkummerow@chromium.org
b071f9884d
Smaller instruction to test negative number on ia32
...
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/23361030
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16335 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 16:48:23 +00:00
mstarzinger@chromium.org
e146b6e148
Fix replaying of captured objects during chunk building.
...
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/22819011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16334 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 16:43:19 +00:00
verwaest@chromium.org
67b6605c5e
Get rid of ConvertFieldToDescriptor.
...
This CL additionally fixes up the attributes for FIELD and CONSTANT in SetLocalPropertyIgnoreAttributes.
R=rossberg@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23252008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16333 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 15:30:30 +00:00
yurys@chromium.org
6261942cdb
Mark test-log/EquivalenceOfLoggingAndTraversal as flaky
...
It was marked as flaky before r16296 where it was skipped because of crashed. The crash is fixed but the test stil flakes.
BUG=v8:2857
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/22865044
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16332 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 15:26:40 +00:00
yurys@chromium.org
2b5d4c611b
Fix test-log/EquivalenceOfLoggingAndTraversal
...
The test has been marked as intermittently failing since 2011 and since that "code-creation" event signature has changed a bit. I updated the parser in the test but that revealed another issue: "code-creation" events with type 'Script' didn't match functions with type 'LazyCompile' retrieved during the heap traversal because the later had name " :1:1" which didn't match the script's name.
BUG=v8:2857
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/22824043
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16331 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 14:56:23 +00:00
yurys@chromium.org
3a7cf7eb1a
Make sure semaphore used in Profiler is deleted
...
BUG=None
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/23420004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16330 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 14:52:26 +00:00
yangguo@chromium.org
b2621dbd71
Port CompileMathFloorCall from ia32 to x64
...
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/23264022
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16329 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 14:51:51 +00:00
yangguo@chromium.org
6aa8a73031
Remove flag aliases for parallel recompilation.
...
R=machenbach@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23125027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16328 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 14:50:12 +00:00
bmeurer@chromium.org
d3b6913f6a
Fix NaCl build after r16322.
...
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/22887053
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16327 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 13:37:01 +00:00
jkummerow@chromium.org
11fd577261
Lower kInitialMaxFastElementArray constant to 95K
...
to work around erroneous "illegal access" error on x64.
BUG=v8:2790
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/22877039
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16324 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 13:04:05 +00:00
mvstanton@chromium.org
c9591f005e
Store mode for keyed stores should be passed in from type feedback
...
regardless of the map used in polymorphic stores.
BUG=
R=jkummerow@chromium.org , verwaest@chromium.org
Review URL: https://codereview.chromium.org/21058003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16323 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 12:28:08 +00:00
bmeurer@chromium.org
04da3331d2
Arm support for DoubleToIStub (truncating).
...
Added support for truncating DoubleToIStub and reorganize the macro-assembler
dToI operations to do the fast-path inline and the slow path by calling the
stub.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/23129003
Patch from Ross McIlroy <rmcilroy@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16322 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 12:24:03 +00:00
dcarney@chromium.org
ad9cc8e716
js accessor creation on Template
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/22903012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16321 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 11:59:14 +00:00
yurys@chromium.org
a29ceb7b27
Use signals for cpu profiling on Mac OS X
...
A while ago in r2315 Mac OS X cpu profiler implementation was changed to pause sampled thread instead of sending SIGPROF signal. That was done because at that point profiler send the signal to the whole process and it was handled on a random thread. Now that signal-based implementation uses pthread_kill it may well be used on Mac OS X too.
BUG=v8:2814
R=bmeurer@chromium.org , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/23115005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16320 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 11:53:29 +00:00
olivf@chromium.org
c8bdc10646
Add a trap_on_abort flag
...
By setting this flag assertions behind --debug-code will trigger a
breakpoint instead of a call into Abort. This eases debugging, as the
call site is less cluttered and the backtrace starts where it should.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23352004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16319 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 11:22:39 +00:00
bmeurer@chromium.org
10a4570282
Add V8_ALIGNAS() and V8_ALIGNOF() and use that in lazy-instance.h.
...
This renames the existing V8_ALIGNAS() to V8_ALIGNED(), and introduces
V8_ALIGNAS(type, alignment) which aligns according to the type and falls
back to aligning according to alignment.
Also use __attribute__((aligned(n))) instead of __attribute__((__aligned__(n))).
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/22999052
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16318 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 11:18:28 +00:00
dcarney@chromium.org
1873546031
fix 16316 debug check
...
TBR=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/22831050
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16317 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 10:11:43 +00:00
dcarney@chromium.org
b1bc71a510
abstract eternal into class
...
R=rossberg@chromium.org , svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/22795004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16316 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 09:41:22 +00:00
bmeurer@chromium.org
5768fcf12c
Fix the CPU feature detection.
...
Move all of the CPU detection logic to the CPU class, and make
all other code use the CPU class for feature detection.
This also fixes the ARM CPU feature detection logic, which was
based on fragile string search in /proc/cpuinfo. Now we use
ELF hwcaps if available, falling back to sane(!!) parsing of
/proc/cpuinfo for CPU features.
The ia32 and x64 code was also cleaned up to make it usable
outside the assembler.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/23401002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16315 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-26 09:37:39 +00:00