danno@chromium.org
a85a493f70
Reland 8636: Implement setting the length property for FixedDoubleArrays.
...
R=ager@chromium.org
BUG=none
TEST=unboxed-double-arrays.js
Review URL: http://codereview.chromium.org/7460008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8690 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-20 09:11:38 +00:00
whesse@chromium.org
e37a45c336
Fix presubmit error in copyright message.
...
Use new gcc flag -Wno-unused-but-set-variable only on linux.
TBR=fschneider@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/7457018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8689 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-20 08:45:30 +00:00
whesse@chromium.org
47e03a0000
fix -Wunused-but-set-variable for gcc-4.6 on x64
...
* src/third_party/valgrind/valgrind.h: Update from upstream valgrind
r11899, so as to get around some unused value warnings. Also adds
support for darwin.
This version of valgrind.h differs from the original in that all
instances of "unsigned long long int" have been replaced with
"uint64_t", as the former is not allowed in ISO C++ 89.
See https://bugs.kde.org/show_bug.cgi?id=211926 for the upstream bug
report.
* src/x64/cpu-x64.cc:
* src/builtins.cc:
* src/conversions-inl.h:
* src/debug.cc:
* src/frames.cc:
* src/full-codegen.cc:
* src/jsregexp.cc:
* src/objects.cc:
* src/parser.cc:
* src/platform-linux.cc:
* src/x64/code-stubs-x64.cc:
* src/x64/deoptimizer-x64.cc:
* src/x64/full-codegen-x64.cc:
* src/x64/lithium-codegen-x64.cc:
* src/x64/regexp-macro-assembler-x64.cc:
* src/x64/stub-cache-x64.cc: Remove a number of assigned but
unreferenced variables.
* SConstruct (CCTEST_EXTRA_FLAGS): Punt on -Wunused-but-set-variable for
the test suite.
BUG=1291
TEST=A build and tools/test.py passes.
Review URL: http://codereview.chromium.org/7400023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8688 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-20 08:09:58 +00:00
ager@chromium.org
e372a2ddeb
Add guard pages in front of executable allocations
...
BUG=89247
Review URL: http://codereview.chromium.org/7379004
Patch from Chris Neckar <cdn@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8687 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-20 08:06:43 +00:00
danno@chromium.org
5df0886925
MIPS: port Implement ICs for FastDoubleArray loads and stores
...
Ported r8637 (72bd791)
BUG=
TEST=
Review URL: http://codereview.chromium.org/7386003
Patch from Paul Lind <plind44@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8686 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-20 07:24:50 +00:00
vitalyr@chromium.org
f9845f851d
grokdump: Add simple support for non-full minudumps.
...
At least we can show the disassembly around the exception now.
R=antonm@chromium.org
Review URL: http://codereview.chromium.org/7439006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8685 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-19 18:29:18 +00:00
danno@chromium.org
a1e851e916
Rollback 8683: Implement setting the length property for FixedDoubleArrays
...
R=ager@chromium.org
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/7448002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8684 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-19 16:34:17 +00:00
danno@chromium.org
837d83ebf3
Implement setting the length property for FixedDoubleArrays.
...
R=ager@chromium.org
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/7400020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8683 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-19 16:06:17 +00:00
danno@chromium.org
11c7b47430
Crankshaft support for FixedDoubleArrays
...
BUG=none
TEST=unboxed-double-arrays.js
Review URL: http://codereview.chromium.org/7350021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8682 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-19 13:04:00 +00:00
rossberg@chromium.org
f7ff89ea02
Implement `in' for proxies.
...
R=ager@chromium.org
BUG=v8:1543
TEST=
Review URL: http://codereview.chromium.org/7390028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8681 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-19 09:38:59 +00:00
ager@chromium.org
85f5afb717
Correctly mark functions from our natives files during compilation.
...
When creating a CompilationInfo we always have the script and can
determine if it is a natives script.
Now that all natives functions are recognized as such, many of them
are called with undefined as the receiver. We have to use different
filtering for builtins functions when printing stack traces.
Also, fixed one call of CALL_NON_FUNCTION to be correctly marked as a
method call (with fixed receiver). Now that CALL_NON_FUNCTION is
marked as a native function this caused the receiver to be undefined.
R=svenpanne@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/7395030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8680 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-19 08:19:31 +00:00
ager@chromium.org
645bb1b1ba
Add GetPropertyAttribute method for Object in the API
...
Patch by Peter Varga.
BUG=none
TEST=cctest/test-api/PropertyAttributes
Review URL: http://codereview.chromium.org/7321006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8679 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-18 17:44:57 +00:00
vitalyr@chromium.org
bfd7c71954
Pass isolate to AST ID functions.
...
R=ager@chromium.org
Review URL: http://codereview.chromium.org/7399023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8678 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-18 17:32:41 +00:00
jkummerow@chromium.org
7ac9dfcc81
Revert "Make GYP build usable for day-to-day work"
...
This reverts r8674 due to failures on the buildbots.
Review URL: http://codereview.chromium.org/7396022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8677 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-18 16:39:41 +00:00
svenpanne@chromium.org
a58580011e
Encapsulated the AST ID recording a bit, this time for MIPS.
...
Review URL: http://codereview.chromium.org/7400019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8676 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-18 14:46:35 +00:00
ager@chromium.org
6098abf46e
Fix the debugger for strict-mode functions.
...
undefined is passed unchanged as the receiver for strict-mode
functions through call and apply. Also, if a strict-mode function is
called without an explicit receiver, undefined is passed as the
receiver (not the global object as for other functions).
R=vegorov@chromium.org
BUG=89236
TEST=mjsunit/debug-scopes.js
Review URL: http://codereview.chromium.org/7388011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8675 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-18 14:29:50 +00:00
jkummerow@chromium.org
93c5c5fa23
Make GYP build usable for day-to-day work
...
- Introduce a global Makefile that triggers GYP-based building
- Some fixes to .gyp[i] files to make everything work
- tools/test-wrapper-gypbuild.py as a temporary solution for easy testing
Review URL: http://codereview.chromium.org/7383006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8674 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-18 14:19:48 +00:00
rossberg@chromium.org
5e62e325ac
Implement sealing, freezing, and related functions for proxies.
...
R=ager@chromium.org
BUG=v8:1543
TEST=
Review URL: http://codereview.chromium.org/7391001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8673 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-18 13:04:52 +00:00
ager@chromium.org
ce75f236f4
Replace reinterpret_cast with BitCast in deoptimizer to please certain compilers.
...
R=jkummerow@chromium.org
BUG=v8:1564
Review URL: http://codereview.chromium.org/7398024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8672 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-18 10:51:28 +00:00
svenpanne@chromium.org
55336b37bd
Fixed confusion between AST IDs and condition codes on ARM.
...
C++'s 'great' idea of implicitly converting an enum to an integral value hit us
again, this time resulting in silly (but currently non-harmful) entries in the
relocation table. Encapsulated the AST ID recording a bit, which helped a lot to
find the culprit.
Review URL: http://codereview.chromium.org/7400016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8671 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-18 10:44:13 +00:00
svenpanne@chromium.org
ec9ae871dd
Prepare push to trunk.
...
Review URL: http://codereview.chromium.org/7397010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8668 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-18 09:36:15 +00:00
ager@chromium.org
78f173c47b
Introduce a random entropy source which can optionally be provided at initialization.
...
BUG=89462
Review URL: http://codereview.chromium.org/7395012
Patch from Chris Neckar <cdn@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8666 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-17 09:16:28 +00:00
vitalyr@chromium.org
6c71920a51
Fix win64 build.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8665 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-15 17:01:54 +00:00
vitalyr@chromium.org
3d323c691b
Avoid TLS load in AstNode constructor.
...
R=ager@chromium.org
Review URL: http://codereview.chromium.org/7383013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8664 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-15 16:57:35 +00:00
yangguo@chromium.org
9481e594b9
Removed unnecessary semicolon.
...
Review URL: http://codereview.chromium.org/7383009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8663 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-15 12:13:29 +00:00
mstarzinger@chromium.org
2a225a3717
Fixed bug in array filter and reduce functions.
...
R=danno@chromium.org
BUG=v8:1559
TEST=test262
Review URL: http://codereview.chromium.org/7368005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8661 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-15 11:07:18 +00:00
rossberg@chromium.org
75a2c49c1d
Implement delete trap for proxies.
...
R=ager@chromium.org
BUG=1543
TEST=
Review URL: http://codereview.chromium.org/7369001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8660 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-15 09:10:20 +00:00
yangguo@chromium.org
5f1a8dc71f
Included variable default for d8.gyp.
...
TEST=build/gyp_v8 --generator-output=testbuild/
Review URL: http://codereview.chromium.org/7384006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8659 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-15 08:44:00 +00:00
jkummerow@chromium.org
8e70bc14cc
Fix gyp build
...
by replicating changes to SConscript from r8654 to cctest.gyp
TEST=cctest compiles with gyp/make.
Review URL: http://codereview.chromium.org/7371006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8658 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-15 08:09:20 +00:00
yangguo@chromium.org
e8bf31427b
Introduces a light version of D8 that links against shared library.
...
Review URL: http://codereview.chromium.org/7351017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8657 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-14 15:43:40 +00:00
jkummerow@chromium.org
d4779286b6
Add map check for COW elements to crankshaft array handling code.
...
BUG=1560
TEST=mjsunit/regress/regress-1560.js
Review URL: http://codereview.chromium.org/7366008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8656 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-14 14:45:20 +00:00
yangguo@chromium.org
a6c2fc443c
Excludes cctest from gyp build if using shared library.
...
Review URL: http://codereview.chromium.org/7366009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8655 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-14 14:42:46 +00:00
mikhail.naganov@gmail.com
e1e2b369eb
Convert *.js files of cctest/test-log into "resources".
...
This allows running cctest from anywhere.
I was to rename single-letter variables in my script due to an encountered issue
in JSMin (http://code.google.com/p/v8/issues/detail?id=1557 ).
R=svenpanne@chromium.org ,sgjesse@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/7354027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8654 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-14 11:38:18 +00:00
vegorov@chromium.org
615add8463
Expose APIs for detecting boxed primitives, native errors and Math.
...
While implementing structured clone I found that I need support
for detecting and creating objects using the builtin Number, String
and Boolean constructors; this CL adds this support. I also need
to be able to detect entities of "native object type (e.g., Error)",
hence the new IsNativeError() calls.
(ref: http://www.whatwg.org/specs/web-apps/current-work/multipage/urls.html#safe-passing-of-structured-data )
Patch by Luke Zarko.
Review URL: http://codereview.chromium.org/7344013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8653 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-14 11:00:04 +00:00
yangguo@chromium.org
3cbd1a1d30
sample shell does not link against shared lib due to latest change
...
Review URL: http://codereview.chromium.org/7366004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8652 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-14 10:46:45 +00:00
danno@chromium.org
dbf0aee6ae
simplification to HClampToUint8
...
* src/hydrogen-instructions.h (HClampToUint8): Don't mark as having
flexible representation; instead the output is always an Integer32.
There is no input representation restriction, so we can still perform
input-specific truncation.
I tested by looking at the --print-code of
var a = PixelArray(1000000)
function fill(a,x) { for (var i=0; i<a.len; i++) a[i] = x; }
Seems to optimize fine both for double and integer inputs. But perhaps
there is a better test, for which the original code does better, and
this is a bogus patch.
Review URL: http://codereview.chromium.org/7357003
Patch from Andy Wingo <wingo@igalia.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8650 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-14 09:51:52 +00:00
ricow@chromium.org
5d024ca5d2
Fix memory leak from sample/shell.cc.
...
We did not dispose the semaphores used in SourceGroup
Review URL: http://codereview.chromium.org/7366002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8649 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-14 09:00:11 +00:00
svenpanne@chromium.org
be24b71ffe
Harmonize naming a bit, x64 was the only platform where Register::from_code was called Register::toRegister.
...
Review URL: http://codereview.chromium.org/7364001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8648 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-14 07:44:04 +00:00
danno@chromium.org
a2d162becd
Fix the build on x64 and ARM.
...
BUG=none
TEST=bot greeness
Review URL: http://codereview.chromium.org/7357002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8647 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-13 16:51:30 +00:00
danno@chromium.org
2e19844aa2
Fixes build failures from FixedDoubleArray IC patch.
...
BUG=none
TEST=windows build bot works
Review URL: http://codereview.chromium.org/7342048
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8646 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-13 16:36:26 +00:00
ager@chromium.org
9c233c711e
Fix shortcutting bug in HInferRepresentation
...
* src/hydrogen.cc (HInferRepresentation::Analyze): Fix iterative loop
over phis; the shortcutting behavior of || appears to be accidental
here, causing O(n^2) convergence. Not that it matters much, but hey!
While I'm at it, a minor comment fix:
* src/hydrogen-instructions.h (EnsureAndPropagateNotMinusZero): Fix a
comment about the kinds of instructions that propagate to multiple
inputs.
BUG=
TEST=passes tools/test.py
Review URL: http://codereview.chromium.org/7350019
Patch from Andy Wingo <wingo@igalia.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8645 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-13 14:43:09 +00:00
danno@chromium.org
391ef3be33
Implement ICs for FastDoubleArray loads and stores
...
Implemented on ia32, x64, ARM. Stubbed out with UNIMPLEMENTED on MIPS.
BUG=none
TEST=unbox-double-arrays.js
Review URL: http://codereview.chromium.org/7307030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8637 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-13 13:50:27 +00:00
ricow@chromium.org
907065c1ae
Fix presubmit
...
Review URL: http://codereview.chromium.org/7354021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8636 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-13 13:29:10 +00:00
vegorov@chromium.org
67709e5355
Fix bug in prototype transitions cache clearing introduced by r8165.
...
Invalid loop nesting causes full cleanup of the prototype transitions cache on every GC.
R=ager@chromium.org
Review URL: http://codereview.chromium.org/7354020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8634 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-13 13:16:00 +00:00
sgjesse@chromium.org
be1eee7063
Support scope information and evaluation in optimized frames
...
R=svenpanne@chromium.org
BUG=v8:1140
TEST=test/mjsunit/debug-evaluate-locals-optimized.js,test/mjsunit/debug-evaluate-locals-optimized-double.js
Review URL: http://codereview.chromium.org//7343005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8633 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-13 12:49:27 +00:00
whesse@chromium.org
86b5123ddc
Prepare push to trunk. We are now working on version 3.4.13.
...
Review URL: http://codereview.chromium.org/7356011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8632 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-13 12:26:39 +00:00
mikhail.naganov@gmail.com
a9a51c054d
WebKit Win fix after r8629: use ...A Win API functions explicitly.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8631 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-13 11:58:46 +00:00
rossberg@chromium.org
ddb782dcb8
Implement Object.getOwnPropertyDescriptor for proxies.
...
Fix bug in compilation of calls with proxy receivers.
R=kmillikin@chromium.org ,ager@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/7237050
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8630 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-13 11:57:15 +00:00
mikhail.naganov@gmail.com
5c57d0d643
Remove support for logging into a memory buffer.
...
The only usage of it was in logging tests, I've switched them for
using a file.
I've left out support for "--logfile=*" for now, as Chromium uses it.
Will be removed after the next V8 roll.
R=sgjesse@chromium.org
BUG=859
TEST=mjsunit/log-*
Review URL: http://codereview.chromium.org/7310025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8629 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-13 11:31:22 +00:00
whesse@chromium.org
b2e8d72bf5
Revert r8619 because of Webkit failures.
...
Review URL: http://codereview.chromium.org/7351014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8628 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-07-13 11:13:40 +00:00