adamk@chromium.org [Mon, 26 Aug 2013 21:37:21 +0000 (21:37 +0000)]
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
palfia@homejinni.com [Mon, 26 Aug 2013 20:29:54 +0000 (20:29 +0000)]
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
mstarzinger@chromium.org [Mon, 26 Aug 2013 17:40:03 +0000 (17:40 +0000)]
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
mstarzinger@chromium.org [Mon, 26 Aug 2013 17:30:41 +0000 (17:30 +0000)]
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
jkummerow@chromium.org [Mon, 26 Aug 2013 17:11:27 +0000 (17:11 +0000)]
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
jkummerow@chromium.org [Mon, 26 Aug 2013 17:00:58 +0000 (17:00 +0000)]
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
jkummerow@chromium.org [Mon, 26 Aug 2013 16:48:23 +0000 (16:48 +0000)]
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
mstarzinger@chromium.org [Mon, 26 Aug 2013 16:43:19 +0000 (16:43 +0000)]
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
verwaest@chromium.org [Mon, 26 Aug 2013 15:30:30 +0000 (15:30 +0000)]
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
yurys@chromium.org [Mon, 26 Aug 2013 15:26:40 +0000 (15:26 +0000)]
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
yurys@chromium.org [Mon, 26 Aug 2013 14:56:23 +0000 (14:56 +0000)]
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
yurys@chromium.org [Mon, 26 Aug 2013 14:52:26 +0000 (14:52 +0000)]
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
yangguo@chromium.org [Mon, 26 Aug 2013 14:51:51 +0000 (14:51 +0000)]
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
yangguo@chromium.org [Mon, 26 Aug 2013 14:50:12 +0000 (14:50 +0000)]
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
bmeurer@chromium.org [Mon, 26 Aug 2013 13:37:01 +0000 (13:37 +0000)]
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
jkummerow@chromium.org [Mon, 26 Aug 2013 13:04:05 +0000 (13:04 +0000)]
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
mvstanton@chromium.org [Mon, 26 Aug 2013 12:28:08 +0000 (12:28 +0000)]
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
bmeurer@chromium.org [Mon, 26 Aug 2013 12:24:03 +0000 (12:24 +0000)]
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
dcarney@chromium.org [Mon, 26 Aug 2013 11:59:14 +0000 (11:59 +0000)]
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
yurys@chromium.org [Mon, 26 Aug 2013 11:53:29 +0000 (11:53 +0000)]
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
olivf@chromium.org [Mon, 26 Aug 2013 11:22:39 +0000 (11:22 +0000)]
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
bmeurer@chromium.org [Mon, 26 Aug 2013 11:18:28 +0000 (11:18 +0000)]
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
dcarney@chromium.org [Mon, 26 Aug 2013 10:11:43 +0000 (10:11 +0000)]
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
dcarney@chromium.org [Mon, 26 Aug 2013 09:41:22 +0000 (09:41 +0000)]
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
bmeurer@chromium.org [Mon, 26 Aug 2013 09:37:39 +0000 (09:37 +0000)]
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
bmeurer@chromium.org [Mon, 26 Aug 2013 08:17:38 +0000 (08:17 +0000)]
Further cleanup of test for V8_INFINITY.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
23202017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16314
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 26 Aug 2013 08:12:08 +0000 (08:12 +0000)]
Revert "Add V8_ALIGNOF() and use that in lazy-instance.h."
This reverts commit r16311 for breaking build with certain compilers.
Will reland once sorted out.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
22979004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16313
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Mon, 26 Aug 2013 08:10:10 +0000 (08:10 +0000)]
Deprecate CpuProfileNode::GetSelfSamplesCount
This method is being replaced by GetHitCount.
BUG=267595
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
22295009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16312
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 26 Aug 2013 08:06:15 +0000 (08:06 +0000)]
Add V8_ALIGNOF() and use that in lazy-instance.h.
Also fix the inconsistent attribute naming, and make V8_GNUC_PREREQ() test work for GCC compatible compilers.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
22888008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16311
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Mon, 26 Aug 2013 07:17:12 +0000 (07:17 +0000)]
Support higher CPU profiler sampling rate on posix systems
New flag is added that allows to specify CPU profiler sampling rate in microseconds as command line argument. It was tested to work fine with 100us interval(currently it is 1ms). Default values are kept the same as in the current implementation. The new implementation is enabled only on POSIX platforms which use signals to collect samples. Other platforms that pause thread being sampled are to follow.
SIGPROF signals are now sent on the profiler event processor thread to make sure that the processing thread does fall far behind the sampling.
The patch is based on the previous one that was rolled out in r13851. The main difference is that the circular queue is not modified for now.
On Linux sampling for CPU profiler is initiated on the profiler event processor thread, other platforms to follow.
CPU profiler continues to use SamplingCircularQueue, we will probably replace it with a single sample buffer when Mac and Win ports support profiling on the event processing thread.
When --prof option is specified profiling is initiated either on the profiler event processor thread if CPU profiler is on or on the SignalSender thread as it used to be if no CPU profiles are being collected.
ProfilerEventsProcessor::ProcessEventsAndDoSample now waits in a tight loop, processing collected samples until sampling interval expires. To save CPU resources I'm planning to change that to use nanosleep as only one sample is expected in the queue at any point.
BUG=v8:2814
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
21101002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16310
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Sat, 24 Aug 2013 16:58:32 +0000 (16:58 +0000)]
Workaround 'inlining failed' build error with older GCC 4.x releases.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
22867047
Patch from Ben Noordhuis <info@bnoordhuis.nl>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16309
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 23 Aug 2013 17:55:22 +0000 (17:55 +0000)]
Replace mapcheck dependency on HStoreNamedField with object.
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
23402005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16308
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 23 Aug 2013 17:20:54 +0000 (17:20 +0000)]
Add source map support to tick processor.
Added a console parameter for source map to the tick processor.
The tickprocesspor reads in the source maps and uses it to output the original filename, line number and column in the profile.
Modified d8 to output column numbers into the log, since this is needed to do source mapping.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22897021
Patch from Daniel Kurka <dankurka@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16307
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 23 Aug 2013 16:31:31 +0000 (16:31 +0000)]
Fix dependency of loading the heap-number for a double-field store to be the mapcheck.
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22926027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16306
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 23 Aug 2013 13:45:24 +0000 (13:45 +0000)]
Fix mjsunit/debug-script after r16298
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
23102015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16303
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 23 Aug 2013 13:30:02 +0000 (13:30 +0000)]
Add --trace-hydrogen-filter flag.
The flag restricts hydrogen.cfg output to functions passing the filter,
similar to what --hydrogen-filter does for optimization in general.
This is useful for investigating large repro cases where tracing all
functions would lead to an impractically large hydrogen.cfg file, but
restricting optimization using --hydrogen-filter is undesirable
(e.g. because it might cause the issue to no longer reproduce).
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22926025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16302
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 23 Aug 2013 13:27:24 +0000 (13:27 +0000)]
Prepare push to trunk. Now working on version 3.21.4.
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
23232008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16299
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 23 Aug 2013 13:24:48 +0000 (13:24 +0000)]
Snapshot i18n Javascript code
BUG=v8:2745
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
23304005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16298
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 23 Aug 2013 13:21:01 +0000 (13:21 +0000)]
Revert "Get rid of ConvertFieldToDescriptor and simplify related code."
R=rossberg@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22999048
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16297
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 23 Aug 2013 13:16:10 +0000 (13:16 +0000)]
Skip test-log/EquivalenceOfLoggingAndTraversal
Note that the test crashes if it fails, so the PASS || FAIL annotation
doesn't work.
BUG=v8:2857
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
22903039
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16296
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 23 Aug 2013 11:52:59 +0000 (11:52 +0000)]
Get rid of ConvertFieldToDescriptor and simplify related code.
R=rossberg@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22861025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16295
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 23 Aug 2013 11:51:34 +0000 (11:51 +0000)]
Add comment about avoiding VS runtime support to OS::DebugBreak.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
23090004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16294
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 23 Aug 2013 11:43:30 +0000 (11:43 +0000)]
Get rid of duplicated CPU::DebugBreak() method.
We already have OS::DebugBreak(), which does the right thing.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22893050
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16293
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 23 Aug 2013 11:31:18 +0000 (11:31 +0000)]
Temporarily disable optimization for StringWrappers to use native valueOf
V8 stores this information directly in the map of the wrapper, however,
it is not invalidated when the prototype of the wrapper is changed, so
once the bit is set, it is no longer possible to override valueOf.
This bug is currently hidden in Chrome since the i18n extension always
modifies the String.prototype, and so the optimization never kicks in.
Disabling the optimization temporarily allows for snapshotting i18n now.
BUG=v8:2855
R=yangguo@chromium.org
TEST=mjsunit/regress/regress-2855.js
Review URL: https://codereview.chromium.org/
23060030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16292
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 23 Aug 2013 11:10:03 +0000 (11:10 +0000)]
Remove hacks for GC stress builders from cctests.
R=machenbach@chromium.org
BUG=cctest
Review URL: https://codereview.chromium.org/
22861037
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16291
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 23 Aug 2013 11:06:49 +0000 (11:06 +0000)]
Delete dead FloatingPointHelper functions
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
22914034
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16290
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 23 Aug 2013 11:06:16 +0000 (11:06 +0000)]
Fix crash due RegExpAtom method called on RegExpCharacterClass object.
In the RegExpUnparser::VisitText(RegExpText* that, void* data) function always RegExpUnparser::VisitAtom function called via that->elements()->at(i).data.u_atom->Accept(this, data); even if the type of the object is RegExpCharacterClass.
The problem shows using g++ 4.7(.2, .3) since r16232, since GCC optimizes virtual method calls to direct calls based on __final/final hints. Tested on MIPS and x64:
Program received signal SIGSEGV, Segmentation fault.
0x0000000000588928 in v8::internal::RegExpUnparser::VisitAtom(v8::internal::RegExpAtom*, void*) ()
This cleans up the TextElement class to avoid the unsafe+unchecked union access, that caused the crash.
TEST=cctest/test-regexp/ParserRegression
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22815033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16289
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 23 Aug 2013 11:04:25 +0000 (11:04 +0000)]
Cleanup and speedup MarkCompactCollector test case.
R=bmeurer@chromium.org
TEST=cctest/test-mark-compact/MarkCompactCollector
Review URL: https://codereview.chromium.org/
23112026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16288
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 23 Aug 2013 10:59:29 +0000 (10:59 +0000)]
Fix crashes of some CPU profiler tests on Windows after r16284
All the tests that started crashing create ProfilerEventsProcessor on the stack. After r16284 SamplingCircularQueue buffer is allocated as a field of the queue instead of separate heap object. This increased self size of ProfilerEventsProcessor by about 1Mb. Windows malloc fails to allocate such an object on the stack and crashes.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
23093022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16287
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 23 Aug 2013 09:25:37 +0000 (09:25 +0000)]
Fix scoping of function declarations in eval inside non-trivial local scope
R=mstarzinger@chromium.org
BUG=v8:2594
Review URL: https://codereview.chromium.org/
22901010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16286
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 23 Aug 2013 08:43:57 +0000 (08:43 +0000)]
Fix compilation on Windows after r16284
BUG=None
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
23361023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16285
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 23 Aug 2013 08:22:07 +0000 (08:22 +0000)]
Rewrite SamplingCircularQueue
The new implementation:
* uses MemoryBarriers to make sure up-to-date data is accessed on both producer and consumer threads
* will not allow to overwrite records
* doesn't have notion of chunks, instead each entry is aligned on the cache line boundaries
BUG=v8:2814
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
22849002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16284
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 23 Aug 2013 08:17:54 +0000 (08:17 +0000)]
grokdump: fix Oddball printing
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
22852021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16283
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 23 Aug 2013 08:11:12 +0000 (08:11 +0000)]
Clean up the redundant Int32Constant check which is covered by double case
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22815032
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16282
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 23 Aug 2013 07:32:25 +0000 (07:32 +0000)]
Move OS/compiler/feature detection to public v8config.h header.
From now on the v8config.h header should be the one and
only file where we do (freaky) checks to detect OS, C++
compiler or certain compiler features. Since we need that
both internally and for the public API, the new v8config.h
is the proper place to add (everything is prefixed with V8_
so we are safe).
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23248006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16281
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 22 Aug 2013 16:14:37 +0000 (16:14 +0000)]
Rename "parallel recompilation" to "concurrent recompilation".
Also introduced macros for flag aliases for temporary backwards compatibility.
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
23014007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16280
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 22 Aug 2013 14:22:55 +0000 (14:22 +0000)]
Make HConstant::InstanceOf less ambiguous.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
23203002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16279
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 22 Aug 2013 13:51:32 +0000 (13:51 +0000)]
Fix hidden properties on object with frozen prototype.
This fixes a corner-case where a frozen prototype with existing hidden
properties might prevent setting hidden properties on another object.
R=rossberg@chromium.org
BUG=v8:2829
Review URL: https://codereview.chromium.org/
22799021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16276
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 22 Aug 2013 13:43:06 +0000 (13:43 +0000)]
Remove special case code for generalizing constants to fields.
R=bmeurer@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22911018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16275
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 22 Aug 2013 13:21:53 +0000 (13:21 +0000)]
Remove dead methods related to InformativeDefinitions.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
22914029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16274
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 22 Aug 2013 13:03:40 +0000 (13:03 +0000)]
Fix deoptimization bug, where recursive call can frighten and confuse the unwitting, simple, poor caveman that is Runtime_NotifyDeoptimized.
BUG=274164
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
23201016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16273
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 22 Aug 2013 12:26:30 +0000 (12:26 +0000)]
Prepare push to trunk. Now working on version 3.21.3.
R=yangguo@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
22801011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16270
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 22 Aug 2013 12:16:00 +0000 (12:16 +0000)]
Never clear debug-stub call ICs. Make a clear distinction between is_debug_stub
used everywhere but the debugger, and IsDebugBreak, used by the debugger.
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
23361014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16269
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 22 Aug 2013 11:58:20 +0000 (11:58 +0000)]
Drop unused rdtsc instruction.
We do not use rdtsc anywhere and we won't ever use that in the
future, as it is totally unusable with multicore and out of
order execution.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
23112016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16268
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 22 Aug 2013 09:09:39 +0000 (09:09 +0000)]
Revert "Add (mostly Chromium-compatible) V8_OS_* defines to v8.gyp."
This reverts commit r16238 for not being able to use the defines
outside of libv8 (i.e. in tests). Will reland the #define's in a
build config header style.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22861022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16267
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 22 Aug 2013 06:44:34 +0000 (06:44 +0000)]
Cleaned up nil comparisons in Hydrogen.
This consists basically of 2 parts:
* Restructured BuildCompareNil to make the logic behind it clearer.
Note that it is intentionally written in a quite stylized way.
* Replaced a usesless IfBuilder by a plain HInstruction, removing
some empty blocks.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
22305004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16266
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 21 Aug 2013 18:31:13 +0000 (18:31 +0000)]
Fix migration checks and extend them to the Scavenger.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
23060018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16265
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 21 Aug 2013 15:31:03 +0000 (15:31 +0000)]
Fix "Hole" leak in TryBuildConsolidatedElementLoad
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
23361007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16262
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 21 Aug 2013 15:17:23 +0000 (15:17 +0000)]
Allow both "--no<flag>" and "--no-<flag>" to disable <flag>.
We shouldn't need to know whether to use --no or --no- as prefix.
The latter is more intuitive and also what chromium uses.
R=machenbach@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
22851009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16261
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 21 Aug 2013 14:49:56 +0000 (14:49 +0000)]
Pass checked values to HLoadNamedField, removing the need for extra type-check field.
R=titzer@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22831003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16260
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 21 Aug 2013 13:39:20 +0000 (13:39 +0000)]
Cleanup FooSpace::VerifyObject and ElementsAccessor::Validate.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
23273004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16259
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 21 Aug 2013 11:16:05 +0000 (11:16 +0000)]
Prepare push to trunk. Now working on version 3.21.2.
R=hpayer@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
23242009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16256
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 21 Aug 2013 10:49:29 +0000 (10:49 +0000)]
Adding missing operator!= for Handle and Persistent.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22932004
Patch from Marja Hölttä <marja@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16255
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 21 Aug 2013 10:43:50 +0000 (10:43 +0000)]
Improve detection of C++11 features.
Also improve detection of V8_INFINITY while we're at it.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23323003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16254
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 21 Aug 2013 08:28:59 +0000 (08:28 +0000)]
Use CheckUsesForFlag to check flag in uses list
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
22862009
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16253
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 20 Aug 2013 22:10:20 +0000 (22:10 +0000)]
MIPS: Fix bug that prevents JALR to JAL optimizations.
TEST=
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
23072023
Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16252
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 20 Aug 2013 18:07:22 +0000 (18:07 +0000)]
MIPS: Remove platform-specific dead code for KeyedStores
Port r16227 (
02df4098)
BUG=
Review URL: https://codereview.chromium.org/
22815014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16251
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 20 Aug 2013 13:57:01 +0000 (13:57 +0000)]
Fix a bug in Div when all uses are truncating
Refine the related test cases to cover truncating cases
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22964004
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16249
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 20 Aug 2013 13:55:52 +0000 (13:55 +0000)]
Promote ArrayBuffer, DataView and typed arrays to non-experimental.
The primary reason for this change is to bake these guys into the
snapshot.
Flag definitions (--harmony-typed-arrays, --harmony-array-buffer) are
still there so that Blink does not complain, but they are noop and
default to true.
R=mstarzinger@chromium.org
BUG=270527
Committed: https://code.google.com/p/v8/source/detail?r=16137
Committed: https://code.google.com/p/v8/source/detail?r=16228
Review URL: https://codereview.chromium.org/
22390008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16248
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 20 Aug 2013 13:20:40 +0000 (13:20 +0000)]
Add warning to cctest when running multiple tests in sequence.
R=mstarzinger@chromium.org
BUG=v8:2848
Review URL: https://codereview.chromium.org/
23067008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16247
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Tue, 20 Aug 2013 13:01:54 +0000 (13:01 +0000)]
Add X87 implementations for Integer32ToDouble, DoubleToI, DoubleToSmi
Additionally refactor the X87Stack tracking
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
20781007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16246
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 20 Aug 2013 11:14:56 +0000 (11:14 +0000)]
Replace OS::MemCopy with memcpy in typed array initialization.
This is an attempt to fix a weird perf regression on MacOS X 10.6 bot.
Perf regression is not reproducible on MacOS X 10.8.
This difference in memory-copying routines is the only reasonable
difference in the algorithm. We should try and see.
R=bmeurer@chromium.org
BUG=270642
Review URL: https://codereview.chromium.org/
23330005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16245
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 11:10:24 +0000 (11:10 +0000)]
Reland "Use V8_FINAL and V8_OVERRIDE in various places, fixing bugs revealed by them.".
- Use V8_FINAL and V8_OVERRIDE in Ast classes.
- Use V8_FINAL and V8_OVERRIDE in Lithium mips backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium arm backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium x64 backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium ia32 backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium classes.
- Use V8_FINAL and V8_OVERRIDE in Hydrogen classes.
TBR=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
22796020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16244
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 10:52:23 +0000 (10:52 +0000)]
Revert "Use V8_FINAL and V8_OVERRIDE in various places, fixing bugs revealed by them."
This reverts commit r16232 for breaking the
tools/gen-postmortem-metadata.py script. Will reland without the
objects.{cc,h} changes.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23143007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16243
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 20 Aug 2013 10:46:02 +0000 (10:46 +0000)]
Remove access-check-failed callback after test.
BUG=v8:2848
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
22802013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16242
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 09:37:21 +0000 (09:37 +0000)]
Visual Studio 2012 and later support the C++11 final keyword.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23128007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16241
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 20 Aug 2013 08:53:34 +0000 (08:53 +0000)]
Consistently use CompilationInfo::AbortOptimization.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
22832002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16240
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 20 Aug 2013 08:46:36 +0000 (08:46 +0000)]
Move i18n break iterator C++ code to runtime
BUG=v8:2745
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22764007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16239
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 08:29:21 +0000 (08:29 +0000)]
Add (mostly Chromium-compatible) V8_OS_* defines to v8.gyp.
R=jkummerow@chromium.org, svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23283010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16238
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 20 Aug 2013 08:17:43 +0000 (08:17 +0000)]
Fix null handle deref in InternalDateFormat
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22927014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16237
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 08:14:19 +0000 (08:14 +0000)]
Fix non-Xcode build on Mac with clang.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
22793008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16236
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 20 Aug 2013 08:12:19 +0000 (08:12 +0000)]
Avoid -O3 in nacl as it does not play well with -W.
Also cleans up some uninitialized data I saw while investigating
the problem.
R=jkummerow@chromium.org, machenbach@chromium.org
Review URL: https://codereview.chromium.org/
23119004
Patch from Ken Mixter <kmixter@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16235
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 20 Aug 2013 08:07:52 +0000 (08:07 +0000)]
Don't use Persistent in runtime
R=dcarney@chromium.org, mstarzinger@chromium.org
BUG=none
Review URL: https://codereview.chromium.org/
22432009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16234
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 20 Aug 2013 08:06:48 +0000 (08:06 +0000)]
During bootstrapping, the script's name is not necessarily set.
So check whether the name is actually set before printing it when
throwing an exception.
BUG=none
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
23283011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16233
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 07:27:06 +0000 (07:27 +0000)]
Use V8_FINAL and V8_OVERRIDE in various places, fixing bugs revealed by them.
- Use V8_FINAL and V8_OVERRIDE in objects.
- Use V8_FINAL and V8_OVERRIDE in Ast classes.
- Use V8_FINAL and V8_OVERRIDE in Lithium mips backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium arm backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium x64 backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium ia32 backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium classes.
- Use V8_FINAL and V8_OVERRIDE in Hydrogen classes.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
23064017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16232
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 06:51:58 +0000 (06:51 +0000)]
Add V8_FINAL and V8_OVERRIDE macros for C++11 final/override.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
22914019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16231
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 06:39:04 +0000 (06:39 +0000)]
Revert "Add FINAL and OVERRIDE macros for C++11 final/override."
This reverts commit r16222 for not using V8_ prefix.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23301006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16230
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 20 Aug 2013 01:37:09 +0000 (01:37 +0000)]
Revert "Promote ArrayBuffer, DataView and typed arrays to non-experimental."
This reverts commit r16137 for breaking Windows build.
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22985011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16229
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 20 Aug 2013 00:48:25 +0000 (00:48 +0000)]
Promote ArrayBuffer, DataView and typed arrays to non-experimental.
The primary reason for this change is to bake these guys into the
snapshot.
Flag definitions (--harmony-typed-arrays, --harmony-array-buffer) are
still there so that Blink does not complain, but they are noop and
default to true.
R=mstarzinger@chromium.org
BUG=270527
Committed: https://code.google.com/p/v8/source/detail?r=16137
Review URL: https://codereview.chromium.org/
22390008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16228
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 19 Aug 2013 22:12:46 +0000 (22:12 +0000)]
Remove platform-specific dead code for KeyedStores
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22745003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16227
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00