Commit Graph

700 Commits

Author SHA1 Message Date
yangguo@chromium.org
3699616609 Rename SeqAsciiString
This is a straight rename:

NewRawAsciiString -> NewRawOneByteString
SeqAscii -> SeqOneByte

SeqOneByteString cannot yet take non-ascii data.

R=yangguo@chromium.org,
BUG=

Review URL: https://chromiumcodereview.appspot.com/11411005
Patch from Dan Carney <dcarney@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-11-15 13:31:27 +00:00
svenpanne@chromium.org
673924413f Re-land rev. 12849 and 12868 (Heavy cleanup of the external pointer API + related fix).
Review URL: https://codereview.chromium.org/11365224

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12945 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-11-13 12:27:03 +00:00
svenpanne@chromium.org
09666b60b8 Rollback of r12868, r12849 on bleeding_edge.
Fixed visibility attribute for GetPointerFromInternalField

Heavy cleanup of the external pointer API.

Review URL: https://codereview.chromium.org/11359125

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12911 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-11-09 10:07:54 +00:00
yangguo@chromium.org
943c10bb87 Rename kAsciiStringTag to kOneByteStringTag
This is just a rename. After commit, I'll begin with the semantic changes.
Until those are complete, kOneByteStringTag will have the same meaning as
kAsciiStringTag.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11293168
Patch from Dan Carney <dcarney@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12897 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-11-08 12:14:29 +00:00
ulan@chromium.org
8a3f19f720 Support shared library build of Android for v8.
v8 depends on the system log library. If we built it as a separate so,
log needs to be included in the link step.

BUG=chromium:158821

Review URL: https://chromiumcodereview.appspot.com/11369081
Patch from Yaron Friedman <yfriedman@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12883 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-11-07 12:22:48 +00:00
svenpanne@chromium.org
f3807ca17b Heavy cleanup of the external pointer API.
Added highly efficient Object::SetAlignedPointerInInternalField and
Object::GetAlignedPointerFromInternalField functions for 2-byte-aligned
pointers. Their non-aligned counterparts Object::GetPointerFromInternalField and
Object::SetPointerInInternalField are now deprecated utility functions.

External is now a true Value again, with New/Value/Cast using a JSObject with an
internal field containing a Foreign. External::Wrap, and External::Unwrap are now
deprecated utility functions.

Added Context::GetEmbedderData and Context::SetEmbedderData. Deprecated
Context::GetData and Context::SetData, these are now only wrappers to access
internal field 0.

Added highly efficient Context::SetAlignedPointerInEmbedderData and
Context::GetAlignedPointerFromEmbedderData functions for 2-byte-aligned
pointers.

Review URL: https://codereview.chromium.org/11190050

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12849 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-11-05 10:25:32 +00:00
yangguo@chromium.org
d2dc5ff546 Fix tick processor to correctly handle the 'parallel-compiler' tick.
BUG=none
TEST=none

Review URL: https://chromiumcodereview.appspot.com/11347043
Patch from Rajeev Krithivasan <rkrithiv@codeaurora.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12838 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-31 11:43:13 +00:00
rossberg@chromium.org
cd9029a502 Initial JS stub implementation of Object.observe. Adds support for .object/.unobserve/.notify/.deliverChangeRecords. No delivery mechanism is implemented for end-of-microtask.
Review URL: https://codereview.chromium.org/11225058
Patch from Rafael Weinstein <rafaelw@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12819 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-25 14:53:26 +00:00
yangguo@chromium.org
7fe6eb5c8e Add json-stringifier.h to v8.gyp.
R=jkummerow@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/11267006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12805 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-24 09:56:01 +00:00
jkummerow@chromium.org
5677ee6565 Fix tools/run-tests.py --report when tests are specified on the command line
Review URL: https://codereview.chromium.org/11189136

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12797 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-23 08:59:53 +00:00
jkummerow@chromium.org
5ea870f855 tools/run-tests.py: A few timeout-related fixes
Review URL: https://codereview.chromium.org/11230029

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12789 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-22 14:13:01 +00:00
ulan@chromium.org
c6feb5065c Fix test runner for Android.
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/11193055

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12770 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-19 09:55:27 +00:00
jkummerow@chromium.org
230bec1274 Use tools/run-tests.py for "check" targets in the top-level Makefile.
Bonus content: a few minor fixes for run-tests.py

Review URL: https://codereview.chromium.org/11184039

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12758 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-18 14:21:35 +00:00
jkummerow@chromium.org
936e6922e2 Use shlex.split() to parse --special-command test argument
This allows passing commands with quoted spaces, such as:
  tools/test-wrapper-gypbuild.py --special-command \
    "$DR/bin64/drrun -ops '-reset_every_nth_pending 0' @" \
    ...

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/11143018
Patch from Reid Kleckner <rnk@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12744 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-16 16:29:19 +00:00
svenpanne@chromium.org
f03fd70d9e Added a simple dead code removal phase.
We iteratively remove all dead Hydrogen instruction until we reach a fixed point. We consider an instruction dead if it is unused, has no observable side effects and is deletable. The last part of the condition is currently not very nice: We basically have to whitelist "safe" instructions, because we are missing more detailed dependencies and/or more detailed tracking of side effects.

We disable dead code elimination for now in our test runners, because we have tons of poorly written tests which wouldn't test anymore what they are supposed to test with this phase enabled. To get test coverage for dead code elimination itself, we should enable it on a few build bots. This is not really a perfect state, but the best we can do for now.

This patch includes a few const-correctness fixes, most of them were necessary for this CL.

Review URL: https://codereview.chromium.org/11088027

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12697 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-11 10:52:58 +00:00
mstarzinger@chromium.org
4887285da4 Make GDBJIT interface compile again.
R=ulan@chromium.org
BUG=v8:1804

Review URL: https://codereview.chromium.org/11022007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12679 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-09 08:24:58 +00:00
ulan@chromium.org
7bea116e50 Change default ARCH version in android low-level profiler script to 4.6
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/11086002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12671 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-08 11:11:30 +00:00
jkummerow@chromium.org
f1d3d734de push-to-trunk.sh/merge-to-branch.sh: use "git apply" instead of "patch" to apply patches
Review URL: https://codereview.chromium.org/11031065

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12663 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-05 08:58:02 +00:00
jkummerow@chromium.org
f10f4fc49c Test runner: More fixes.
- handle Ctrl+C better
- actually show error messages sent by network peers
- gracefully handle missing test cases
- pull test.py and utils.py during server setup (temporary fix for testcfg import issue)

Review URL: https://codereview.chromium.org/11036005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12648 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-02 08:50:02 +00:00
jkummerow@chromium.org
12d4075c03 Test runner: fix empty patches; better error message for missing test files; correct .gitignore entry for message.status2
Review URL: https://codereview.chromium.org/11035004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12645 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-01 17:16:00 +00:00
jkummerow@chromium.org
44967541f9 Test runner: Send SVN revision instead of git commit hash in work packet
Review URL: https://codereview.chromium.org/11013007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12635 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-01 09:05:27 +00:00
mstarzinger@chromium.org
09e73bc79b Test runner: remove noisy debug output.
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/10993080

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12634 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-28 15:53:46 +00:00
jkummerow@chromium.org
4a6c2a8f09 Test runner: fix outdated "import discovery"
Review URL: https://codereview.chromium.org/10983084

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12633 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-28 15:11:33 +00:00
jkummerow@chromium.org
70c4d78331 test runner: fix wildcard handling in test status files
Review URL: https://codereview.chromium.org/10986086

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12632 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-28 14:59:00 +00:00
jkummerow@chromium.org
7dada9fd48 test runner: fix "test-server.py setup"
Review URL: https://codereview.chromium.org/10990109

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12631 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-28 14:56:58 +00:00
vegorov@chromium.org
d6853c3697 Extend grokdump.py with simple BreakPad symbol files support.
R=mstarzinger@chromium.org
BUG=

Review URL: https://codereview.chromium.org/10923003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12620 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-26 12:51:46 +00:00
danno@chromium.org
16782af657 Fix silently failing branch merge script on Mac
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10981034

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12615 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-26 11:19:35 +00:00
jkummerow@chromium.org
975d6e2170 First commit of new tools/run-tests.py
Review URL: https://codereview.chromium.org/10919265

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12583 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-24 09:38:46 +00:00
ulan@chromium.org
9ac3be9670 Wait for resolving conflicts in merge-to-branch script.
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10939033

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-20 08:02:17 +00:00
ulan@chromium.org
6df4bcfecf Add support for running low level profiler on Android.
R=mstarzinger@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10908122

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12469 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-06 15:01:20 +00:00
vegorov@chromium.org
caef39a3fd Extend grokdump.py with [u]nassemble command
R=mstarzinger@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/10910091

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12447 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-05 16:23:01 +00:00
ulan@chromium.org
6095c38fa3 Fix typo in grokdump.
R=verwaest@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10883004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12372 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-08-23 16:11:37 +00:00
svenpanne@chromium.org
0adda1c82e Print more x64 registers in grokdump.
Review URL: https://chromiumcodereview.appspot.com/10873006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12363 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-08-22 07:02:19 +00:00
jkummerow@chromium.org
d1aaafd89d tools/push-to-trunk.sh: Add a check whether grepping for the just-committed SVN revision number succeeded.
R=yangguo@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10828210

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12279 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-08-08 14:57:10 +00:00
jkummerow@chromium.org
0f7288aa21 Remove unused fields in test.py
Review URL: https://chromiumcodereview.appspot.com/10833002
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12218 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-30 09:09:13 +00:00
yangguo@chromium.org
49400e22b6 Rewrite Makefile rules for Android to allow parallel execution
BUG=v8:2257

Review URL: https://chromiumcodereview.appspot.com/10824039
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12211 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-27 11:14:44 +00:00
mikhail.naganov@gmail.com
1e5cf45e3a Fix path to d8 and properly quote strings so it works with dash(1)
Patch by Sandro Santilli <strk@keybit.net>

Review URL: https://chromiumcodereview.appspot.com/10825032

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12200 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-26 10:03:30 +00:00
jkummerow@chromium.org
2231bc4e2f Android test runner: Make android-sync.sh work on Mac
Review URL: https://chromiumcodereview.appspot.com/10806063
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12178 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-23 16:57:22 +00:00
jkummerow@chromium.org
82bcbf88db Enable building V8 for Android on Mac
Review URL: https://chromiumcodereview.appspot.com/10795045
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12172 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-23 12:02:46 +00:00
jkummerow@chromium.org
72e4a144da Android test runner: Do not copy files in *.svn folder
Review URL: https://chromiumcodereview.appspot.com/10815050
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12171 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-23 11:34:03 +00:00
jkummerow@chromium.org
8880673596 Set 'executable' bit on tools/android-build.sh
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12168 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-23 09:59:17 +00:00
sanjoy@chromium.org
693c7643d2 Optimize functions on a second thread.
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10807024

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-19 18:58:23 +00:00
jkummerow@chromium.org
96cfef98d8 Android test runner: Rename "Error" to "ANDROID"
Review URL: https://chromiumcodereview.appspot.com/10809010
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12143 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-19 10:44:15 +00:00
jkummerow@chromium.org
6c6fb49671 Android test runner: Sync missing JS files
Review URL: https://chromiumcodereview.appspot.com/10801009
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12125 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-18 12:40:13 +00:00
yangguo@chromium.org
ca2b0e366b Expose counters in javascript.
R=rossberg
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10803008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12124 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-18 12:27:29 +00:00
jkummerow@chromium.org
6a60899022 Build V8 for Android IA
Review URL: https://chromiumcodereview.appspot.com/10778033
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12122 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-18 11:43:44 +00:00
jkummerow@chromium.org
ada84adaac Make android.check work
Review URL: https://chromiumcodereview.appspot.com/10779011
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12101 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-16 16:22:28 +00:00
jkummerow@chromium.org
39c1663832 Add an option to the tickprocessor to specify the directory for lib lookup
This is usefull when generating a profile on one architecture and analyzing it
on another architecture or system version.

Review URL: https://chromiumcodereview.appspot.com/10704128

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12089 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-16 11:00:44 +00:00
jkummerow@chromium.org
2f43f5e9d7 MIPS: Rename "mips" arch to "mipsel" in the GYP build.
In the traditional MIPS naming scheme, "mips" is used for
big-endian mips and "mipsel" is used for little-endian mips.
In V8 the "mips" build is little-endian, so the "mips" target is
renamed to "mipsel" to be compliant with the traditional MIPS
naming scheme.

This change is also required for supporting the Chromium project on MIPS.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10695114

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-11 15:15:04 +00:00
verwaest@chromium.org
d7a5b7d5e2 Separating transitions from descriptors.
In this design maps contain descriptor arrays, which in turn can contain transition arrays. If transitions are needed when no descriptor array is present, a descriptor array without real descriptors is inserted just so it can point at the transition array.

The transition array does not contain details about the field it transitions to. In order to weed out transitions to FIELDs from CONSTANT_FUNCTION (what used to be MAP_TRANSITION vs CONSTANT_TRANSITION), the transition needs to be followed and the details need to be looked up in the target map. CALLBACKS transitions are still easy to recognize since the transition targets are stored as an AccessorPair containing the maps, rather than the maps directly.

Currently AccessorPairs containing a transition and an accessor are shared between the descriptor array and the transition array. This simplifies lookup since we only have to look in one of both arrays. This will change in subsequent revisions, when descriptor arrays will become shared between multiple maps, since transitions cannot be shared.

Review URL: https://chromiumcodereview.appspot.com/10697015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11994 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-05 13:54:20 +00:00
yangguo@chromium.org
ec4ab693c2 Add function to grokdump shell to print ASCII string.
R=mstarzinger@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10697067

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11981 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-03 11:56:30 +00:00
ulan@chromium.org
c22c7054f2 Add Makefile targets for running tests on Android.
This allows to run tests on the attached Android device using
> make android.check
> make android.debug.check
> make android.release.check
> ANDROID_V8=/data/local/v8 TESTJOBS=-j4 make android.release.check -j10

Tests and binaries are copied to device location specified by the ANDROID_V8
variable and then tests are executed using the 'adb shell' program.

R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10696048

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11975 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-07-03 07:45:58 +00:00
jkummerow@chromium.org
6504c92c0a Allow using test-wrapper-gypbuild.py on Windows when no python interpreter is registered.
R=danno@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10716004
Patch from Sigurður Ásgeirsson <siggi@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11944 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-06-28 14:31:03 +00:00
vegorov@chromium.org
22b3bf5867 Teach grokdump to print oddball kind when ToString content is not available
R=danno@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10559063

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11856 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-06-19 11:41:50 +00:00
erik.corry@gmail.com
e817800f14 postmortem: fix postmortem build
This is a commit of https://chromiumcodereview.appspot.com/10539132/ for Fedor Indutny.


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11801 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-06-13 13:48:18 +00:00
jkummerow@chromium.org
a1c4fe13ee Remove --crankshaft flag from the test infrastructure.
It has outlived its usefulness as Crankshaft is on by default anyway.

Review URL: https://chromiumcodereview.appspot.com/10539062

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11749 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-06-08 14:47:12 +00:00
mstarzinger@chromium.org
ee6a85a007 Remove temporary debug print from test wrapper.
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10483005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11707 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-06-04 12:38:59 +00:00
mstarzinger@chromium.org
c5160606f0 Fix grokdump inspector search for invalid addresses.
R=ulan@chromium.org
TEST=tools/grokdump.py

Review URL: https://chromiumcodereview.appspot.com/10467003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11701 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-06-01 12:41:31 +00:00
mstarzinger@chromium.org
dd81e9e29a Implement grokdump annotations for well-known objects.
R=ulan@chromium.org
TEST=tools/grokdump.py

Review URL: https://chromiumcodereview.appspot.com/10441088

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11684 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-31 08:01:54 +00:00
jkummerow@chromium.org
c2331335dd Add explicit "python" to subprocess args in test wrapper script
Review URL: https://chromiumcodereview.appspot.com/10447031

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11663 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-25 12:27:23 +00:00
danno@chromium.org
9910edbb9a Implement tracking and optimizations of packed arrays
R=jkummerow@chromium.org
TEST=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10170030

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11636 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-23 14:24:29 +00:00
mstarzinger@chromium.org
596d7127d7 Fix harness for fuzzer to run for 100 iterations only.
R=jkummerow@chromium.org
TEST=tools/fuzz-harness.sh

Review URL: https://chromiumcodereview.appspot.com/10409073

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11629 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-23 07:55:38 +00:00
mstarzinger@chromium.org
99d69e0f29 Add harness script for JavaScript language fuzzer.
R=jkummerow@chromium.org
TEST=tools/fuzz-harness.sh

Review URL: https://chromiumcodereview.appspot.com/10407094

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11624 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-22 15:15:44 +00:00
erik.corry@gmail.com
5cd40f740d Grokdump -f: Automatically detect memory that is x86/x64 instructions or text and dump appropriately.
Review URL: https://chromiumcodereview.appspot.com/10356150

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11621 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-22 11:08:05 +00:00
yangguo@chromium.org
7813b1dd70 Fixing python deprecations.
Original patch by Alexey Stukalov <astukalov@gmail.com>.

BUG=v8:1391
TEST=

Review URL: https://chromiumcodereview.appspot.com/10412022

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11604 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-21 10:19:28 +00:00
yangguo@chromium.org
266c17e5d0 Simplify v8.gyp.
Based on http://codereview.chromium.org/10310156

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10398057

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-16 15:48:06 +00:00
erik.corry@gmail.com
4269fc84f1 Add -f or --full flag to grokdump to dump all available memory areas from the minidump.
Review URL: https://chromiumcodereview.appspot.com/10332137

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11554 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-14 07:57:56 +00:00
jkummerow@chromium.org
1819105559 Prepare for using GYP build on buildbots
Review URL: https://chromiumcodereview.appspot.com/10383128

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11546 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-11 12:18:09 +00:00
vegorov@chromium.org
818aba70b2 Extend grokdump with basic interactive shell capabilities.
Supported commands:

- dd: to print memory region
- s: to search for a word in available memory regions
- list: to list available memory regions

R=mstarzinger@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10378087

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11537 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-05-10 12:44:15 +00:00
yangguo@chromium.org
0cfa70852a Fix presubmit check for the case when cpplint fails.
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10124006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11384 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-04-19 10:28:26 +00:00
jkummerow@chromium.org
0e80df8fa8 Small improvements to push-to-trunk.sh and merge-to-branch.sh.
1.) When a back-merged patch applied at an offset, ignore the "Hunk #1 succeeded at ..." lines instead of printing a scary warning.
2.) When push-to-trunk was not called with "-c /path/to/chrome/src", explicitly ask for the path to help discoverability of the feature.
3.) Correctly convert "BUG=chromium:123" to "(Chromium issue 123)" in the pre-made ChangeLog entry.

Review URL: https://chromiumcodereview.appspot.com/10073010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11321 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-04-13 16:00:31 +00:00
jkummerow@chromium.org
da5b44cbd1 Add support for Mac OS X 64bit builds with GYP
Note that in order to build for 64bits mode, you'll have
to specify the target architecture explicitely, the default
is still 32bits for Mac OS X.

Example with make and gcc:

$ export GYP_GENERATORS=make
$ make dependencies
$ make -j 8 library=shared x64.release

Example with make and clang:

$ export GYP_GENERATORS=make
$ export CC=/usr/bin/clang
$ export CXX=/usr/bin/clang++
$ export GYP_DEFINES="clang=1"
$ make dependencies
$ make -j 8 library=shared x64.release

Example with xcode:

$ export GYP_GENERATORS=xcode
$ build/gyp_v8 -Dtarget_arch=x64
$ xcodebuild -project build/all.xcodeproj -configuration Release

Contributed by Filipe David Manana <fdmanana@gmail.com>

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9808065

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11199 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-30 15:01:11 +00:00
danno@chromium.org
63f033576c Fix performance regressions due to lazy initialization.
This CL:
- Adds a new trait parameter to LazyInstance to let it initialize the instance
  without paying the cost of atomic operations (which are expensive on Mac).
  This only works for users who don't care about thread-safety and this is now
the default initialization trait used by LazyInstance in v8.

- Reverts the changes that were made in r11010 in isolate.{cc,h}. That lets
  Isolate's accessors be as cheap as they were before (but adds one static initializer).

- Adds OS::PostSetup() used to initialize the math functions which depend on CPU features.
That lets the math functions get rid of CallOnce().

BUG=118686

Review URL: https://chromiumcodereview.appspot.com/9873023
Patch from Philippe Liard <pliard@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11198 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-30 14:30:46 +00:00
jkummerow@chromium.org
429407d594 Un-bork v8.gyp after r11010
TEST=no more warning "Missing input file tools\gyp\..\..\src\src\list-inl.h"

Review URL: https://chromiumcodereview.appspot.com/9924006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11185 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-29 14:01:21 +00:00
danno@chromium.org
c12a9ed6f0 Allow a commit message to be specified to merge-to-branch.sh
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9844015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11181 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-29 07:01:36 +00:00
danno@chromium.org
924b567382 Support reverse patching in merge-to-branch.sh
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9839056

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11142 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-26 11:35:17 +00:00
danno@chromium.org
754264325f Allow a patch file to be specified to merge-to-branch.sh
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9835048

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11119 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-23 11:54:07 +00:00
jkummerow@chromium.org
c0ec8a64be push-to-trunk.sh: Don't send Chromium CLs to the commit queue immediately
Review URL: https://chromiumcodereview.appspot.com/9835047

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11115 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-23 10:22:45 +00:00
jkummerow@chromium.org
0bbe8c4fae Fix FLAG_always_opt and tools/push-to-trunk.sh
TEST=tests with --always-opt don't ASSERT; push to trunk workflow works.

Review URL: https://chromiumcodereview.appspot.com/9718035

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11080 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-19 10:16:38 +00:00
danno@chromium.org
0ed593df56 Fix bugs in tools/merge-to-branch.sh
Fail if patches fail to apply and correctly match branches in delete_branch().

R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9701102

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11073 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-16 16:04:01 +00:00
mstarzinger@chromium.org
32c481b698 Fix test harness to not break on aborts.
R=danno@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9706100

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11072 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-16 14:33:55 +00:00
mstarzinger@chromium.org
1f8a901141 Fix passing of shard options in test wrapper.
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9702022

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-14 14:52:52 +00:00
yangguo@chromium.org
26659b13c8 Fix test.py for Python 2.7.
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9695053
Patch from Bert Belder <bertbelder@gmail.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-13 17:19:24 +00:00
jkummerow@chromium.org
a63d1211d3 Fix "already merging" safety check in merge-to-branch.sh
R=danno@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9689062

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11031 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-13 15:57:31 +00:00
jkummerow@chromium.org
ea175d6635 Fix DEPS file patching in push-to-trunk.sh
R=yangguo@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9693037

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11020 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-13 11:01:28 +00:00
fschneider@chromium.org
1f7d42efc9 Landing for pliard@chromium.org: Remove static initializers in v8.
This change includes two CLs by pliard@chromium.org:

1. http://codereview.chromium.org/9447052/ (Add CallOnce() and simple LazyInstance implementation):

Note that this implementation of LazyInstance does not handle global destructors (i.e. the lazy instances are never deleted).

This CL was initially reviewed on codereview.appspot.com:
http://codereview.appspot.com/5687064/



2.  http://codereview.chromium.org/9455088/ (Remove static initializers in v8):
This CL depends on CL 9447052 (adding CallOnce and LazyInstance).
It is based on a patch sent by Digit.

With this patch applied, we have only one static initializer left (in atomicops_internals_x86_gcc.cc). This static initializer populates a structure used by x86 atomic operations. It seems that we can hardly remove it. If possible, it will be removed in a next CL. 

This CL also modifies the presubmit script to check the number of static initializers.


BUG=v8:1859
Review URL: https://chromiumcodereview.appspot.com/9666052

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-12 13:56:56 +00:00
jkummerow@chromium.org
a737ff5cd2 Add explicit dependency on v8_base
This is necessary in order to link v8_shell (for host) with the Android
toolchain.

Without it, the line in the makefile is:
$(builddir)/v8_shell: LD_INPUTS := $(OBJS) $(obj).host/v8/tools/gyp/libv8_snapshot.a $(obj).host/v8/tools/gyp/libv8_base.a

Now it appears as:
$(builddir)/v8_shell: LD_INPUTS := $(OBJS) $(obj).host/v8/tools/gyp/libv8_base.a $(obj).host/v8/tools/gyp/libv8_snapshot.a

and it successfully links.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9668013
Patch from Yaron Friedman <yfriedman@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-12 10:35:50 +00:00
vegorov@chromium.org
9ad61f635e Add Code-related fields to postmortem metadata
Review URL: https://chromiumcodereview.appspot.com/9361008
Patch from David Pacheco <dap@joyent.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10986 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-09 12:34:42 +00:00
ulan@chromium.org
1767fef60b Implement date library functions in C++.
Developed together with Andreas Rossberg based on:
  https://chromiumcodereview.appspot.com/9117034/
  https://chromiumcodereview.appspot.com/9307083/

R=rossberg@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9572008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-09 12:07:29 +00:00
jkummerow@chromium.org
6dd05d9b34 Refactored push-to-trunk.sh and merge-to-branch.sh.
Moved common code into tools/common-includes.sh.
Added automated rolling of V8 into Chromium to push-to-trunk.sh.

Review URL: https://chromiumcodereview.appspot.com/9463041

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10976 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-09 10:16:00 +00:00
rossberg@chromium.org
dbb95bc5f0 Fix minifier to distinguish regexps from divisions (to some extent).
Rrraaa, I have to say, doing program rewriting via regexp rules is an inherently broken idea...

R=mstarzinger@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9644001

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10969 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-08 16:38:44 +00:00
rossberg@chromium.org
448b620dad Basic interface inference for modules.
All module expressions, and all variables that might refer to modules,
are assigned interfaces (module types) that are resolved using
unification. This is necessary to deal with the highly recursive
nature of ES6 modules, which does not allow any kind of bottom-up
strategy for resolving module names and paths.

Error messages are rudimental right now. Probably need to track
more information to make them nicer.

R=svenpanne@chromium.org
BUG=v8:1569
TEST=

Review URL: https://chromiumcodereview.appspot.com/9615009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10966 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-08 13:03:07 +00:00
mstarzinger@chromium.org
b732b2e32a Implement --download-data for test harness.
This allows the test harness to download missing test suite data if
necessary. We use the bzip2 archive for test262 because it is faster
than cloning the repository and also works without any Mercurial
installation.

R=yangguo@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9619002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10955 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-07 12:51:31 +00:00
yangguo@chromium.org
3a457381d7 Update test262 expectations concerning 64-bit precision double.
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9540010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10883 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-03-01 11:37:10 +00:00
fschneider@chromium.org
d1172448ad Make HashMap a template class to specify the allocation policy.
The old HashMap class had an explicit member to determine the allocation
policy. The template version matches the approach used already for
lists.

Cleanup some include dependencies and unnecessary forward declarations.

Cleanup some dead code from isolate.h and replace some HEAP macros
with GetHeap().
Review URL: https://chromiumcodereview.appspot.com/9372106

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10806 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-02-23 09:12:57 +00:00
vegorov@chromium.org
9e87728572 In gcmole assume that methods exiting VM can cause GC.
Detect those methods by reference to StateTag::EXTERNAL in their bodies.

R=fschneider@google.com

Review URL: https://chromiumcodereview.appspot.com/9420046

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10738 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-02-17 11:34:50 +00:00
yangguo@chromium.org
941d884af4 MIPS: Enabled mips in tools/disasm.py.
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9307118
Patch from Daniel Kalmar <kalmard@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10710 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-02-15 08:18:06 +00:00
yangguo@chromium.org
80326e08e0 Add --call-graph-size option to tickprocessor.
BUG=v8:1937

Review URL: https://chromiumcodereview.appspot.com/9386007
Patch from Ben Noordhuis <info@bnoordhuis.nl>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10680 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-02-13 10:07:57 +00:00
fschneider@chromium.org
f833c4031b Increase timeout when running test.py with the --stress-opt option.
Review URL: https://chromiumcodereview.appspot.com/9361033

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10650 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-02-09 08:47:18 +00:00
jkummerow@chromium.org
32e4451a4d Bash completion for d8: fix directory name completion
TEST="out/ia32.release/d8 te<tab>" gets completed to "test/" with trailing slash

Review URL: https://chromiumcodereview.appspot.com/9363025

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10649 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-02-08 17:20:35 +00:00