- 03 Jan, 2011 1 commit
-
-
kmillikin@chromium.org authored
The function HEnvironment::SetExpressionStackAt did not update the environment's history. This function is used to patch the bailout environment for count operations and global function calls. Reorganize class HEnvironment to make it fit V8's style a bit better and to try to add some sanity to which C++ functions are intended to be inlined. Remove the flag --trace-environment which merely duplicated data in the hydrogen.cfg file except without enough context to be useful. BUG=1004 Review URL: http://codereview.chromium.org/5992011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6137 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Dec, 2010 1 commit
-
-
sgjesse@chromium.org authored
objectprint=on (defaults to off) option (which defines OBJECT_PRINT). 2. Added the ability to print objects to a specified file instead of just stdout. 3. Added a use_verbose_printer flag (true by default) to allow some object printouts to be less verbose when the flag is false. 4. Fixed a bug in VSNPrintF() where it can potentially write into an empty char vector. Patch by Mark Lam from Hewlett-Packard Development Company, LP Review URL: http://codereview.chromium.org/5998001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6080 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Dec, 2010 1 commit
-
-
vitalyr@chromium.org authored
o Add --print-unopt-code to print unoptimized code before printing optimized code based on it. This is useful to see the states of ICs and the effects of code patching. o Use debug function names in disassembly output. Review URL: http://codereview.chromium.org/5959003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6074 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Dec, 2010 1 commit
-
-
ricow@chromium.org authored
This allows easy testing with more than 5/2 stress runs in release/debug and will allow us to have a nightly run with e.g., 10 stress runs in debug mode. Review URL: http://codereview.chromium.org/5903003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6050 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Dec, 2010 1 commit
-
-
karlklose@chromium.org authored
Keep track of the ratio between JS and non-JS ticks and use this ratio to adjust the lookup threshold. (Also add support to trace compilation statistics.) Review URL: http://codereview.chromium.org/5633009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5955 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Dec, 2010 4 commits
-
-
mikhail.naganov@gmail.com authored
This is no longer used in Chromium, and only pollutes code. BUG=859 Review URL: http://codereview.chromium.org/5575006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5934 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Nov, 2010 1 commit
-
-
ager@chromium.org authored
Add 128MB limit for executable pages. BUG=http://code.google.com/p/v8/issues/detail?id=925 TEST=None. TBR=jschuh@chromium.org Review URL: http://codereview.chromium.org/4634003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5799 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Oct, 2010 1 commit
-
-
ager@chromium.org authored
This switches out the existing constant splitting with masking that works like this: 1. Generate a random 32-bit value at compilation time. 2. XOR the 32-bit constant with the random value. 3. Emit the resulting immediate value along with the XOR operation to generate the original value. BUG=http://code.google.com/p/v8/issues/detail?id=908 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5734 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Oct, 2010 1 commit
-
-
vitalyr@chromium.org authored
Since 2.6.31 perf_events interface has been available in the kernel. There's a nice tool called "perf" (linux-2.6/tools/perf) that uses this interface and provides capabilities similar to oprofile. The simplest form of its usage is just dumping the raw log (trace) of events generated by the kernel. In this patch I'm adding a script (tools/ll_prof.py) to build profiles based on perf trace and our code log. All the heavy-lifting is done by perf. Compared to oprofile agent this approach does not require recompilation and supports code moving garbage collections. Expected usage is documented in the ll_prof's help. Basically one should run V8 under perf passing --ll-prof flag and then the produced logs can be analyzed by tools/ll_prof.py. The new --ll-prof flag enables logging of generated code object locations and names (like --log-code), and also of their bodies, which can be later disassembled and annotated by the script. Review URL: http://codereview.chromium.org/3831002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5663 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Sep, 2010 1 commit
-
-
erik.corry@gmail.com authored
This one has been approved by the 64 bit compiler in MSVC 2005 so I hope it also passes the 2008 version. The --max-new-space-size option is now in kBytes. The --max-old-space-size option is now in MBytes. Some issues remain with 64 bit heaps and the counters. See http://code.google.com/p/v8/issues/detail?id=887 Review URL: http://codereview.chromium.org/3573005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5559 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Sep, 2010 3 commits
-
-
vitalyr@chromium.org authored
I also added a flag like the ones we have for other SSE versions. Review URL: http://codereview.chromium.org/3505003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5548 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
be done from Windows where the compiler is stricter about truncating changes. Review URL: http://codereview.chromium.org/3454035 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5545 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
removing the 1Gbyte limit. Review URL: http://codereview.chromium.org/3418035 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5542 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Sep, 2010 1 commit
-
-
fschneider@chromium.org authored
The stubs get an additional flag for including the smi code inside the stub. This allows us to generate more compact code if we don't want to inline the smi case outside the stub. Review URL: http://codereview.chromium.org/3388005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5456 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Sep, 2010 1 commit
-
-
erik.corry@gmail.com authored
Clang compatibility changes. This is a commit of http://codereview.chromium.org/3364002 for coldredlemur git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5402 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Aug, 2010 1 commit
-
-
ager@chromium.org authored
approach. Review URL: http://codereview.chromium.org/3152016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5259 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Jun, 2010 1 commit
-
-
ricow@chromium.org authored
fixed in revision 4921). This also enables codeflushing by default. Review URL: http://codereview.chromium.org/2829020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Jun, 2010 1 commit
-
-
vitalyr@chromium.org authored
If a two-byte string only contains ascii characters, then we can save memory when flattening a cons string containing it. Similarly we can use this in Array.prototype.join implementation. To track this a new bit is added to instance type. This bit is used as a hint in generated code and in runtime functions. To enable testing a new V8 extension is added controlled by --expose-externalize-string flag. Review URL: http://codereview.chromium.org/2762008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Jun, 2010 1 commit
-
-
ricow@chromium.org authored
Since we have an issue with code flusing on the trybots preventing us from pushing to chromium, a new flag for enabling code flushing, --flush_code, is introduced with this change (defaulting to false). Review URL: http://codereview.chromium.org/2734005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4840 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Jun, 2010 1 commit
-
-
sgjesse@chromium.org authored
Added support for more precise break points when debugging and stepping. To achieve that additional nop instructions are inserted where breaking would otherwise be impossible. The number of nop instructions inserted are sufficient to make place for patching with a call to a debug break code stub. On Intel that is 5 nop's for 32-bit and 13 for 64-bit. Om ARM 3 nop instructions (12 bytes) are required. In order to avoid inserting nop's in to many places a simple ast checker have been added to check whether there are breakable code in a statement or expression. If it is possible to break in an expression no additional break enabeling code is inserted. Added break locations to the true and false part of a conditional expression. Added stepping tests to cover more constructs. These changes are only in the full compiler. Changed the default value for the option --debugger in teh d8 shell from true to false. The reason for this is that with --debugger turned on the full compiler will be used for all code in when running d8, which can be unexpeceted. Review URL: http://codereview.chromium.org/2693002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4820 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 May, 2010 1 commit
-
-
vegorov@chromium.org authored
Reapply r4715 with fixes reviewed in http://codereview.chromium.org/2276002. Review URL: http://codereview.chromium.org/2255004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4743 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 May, 2010 1 commit
-
-
vegorov@chromium.org authored
TBR=ager@chromium.org Review URL: http://codereview.chromium.org/2274001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4723 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 May, 2010 2 commits
-
-
sgjesse@chromium.org authored
The full compiler is now complete on ARM as well. The syntax checker is still used to determine whether to use it for top level code or not during normal execution. When debugging is enabled all code will be compiled with the full compiler. This change removes the temporary flag --force-full-compiler and now the flag --always-full-compiler enables the full compiler for all code on all platforms. This also fixes building on Intel platform without debugger support (ENABLE_DEBUGGER_SUPPORT not defined) and adds full check for the full compiler for lazily compiled code. Review URL: http://codereview.chromium.org/2163006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4716 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
- New сardmarking write barrier handles large objects and normal objects in a similar fashion (no more additional space for pointer tracking is required, no conditional branches in WB code). - Changes to enable oldspaces iteration without maps decoding: -- layout change for FixedArrays: length is stored as a smis (initial patch by Kevin Millikin) -- layout change for SharedFunctionInfo: integer fields are stored as smi on arm, ia32 and rearranged on x64. -- layout change for String: meaning of LSB bit is fliped (1 now means hash not computed); on x64 padding is added. -- layout of maps is _not_ changed. Map space is currently iterated in a special way. Review URL: http://codereview.chromium.org/2144006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4715 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 May, 2010 2 commits
-
-
vegorov@chromium.org authored
TBR=ager@chromium.org Review URL: http://codereview.chromium.org/2073018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4704 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Reapplication of r4685 (reviewed http://codereview.chromium.org/2101002) with minor modifications: - Fix compilation problems on Win64. - Improve heap verification pass: search for garbage pointers to new space not only in dirty regions but in all regions. Review URL: http://codereview.chromium.org/2114015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4703 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 May, 2010 4 commits
-
-
ager@chromium.org authored
Already reviewed at: http://codereview.chromium.org/2078022/show TBR=vegorov@chromium.org Review URL: http://codereview.chromium.org/2137008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4689 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
TBR=ager@chromium.org Review URL: http://codereview.chromium.org/2071020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4688 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Review URL: http://codereview.chromium.org/2078022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4686 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
-- layout change for FixedArrays: length is stored as a smis (initial patch by Kevin Millikin) -- layout change for SharedFunctionInfo: integer fields are stored as smi on arm, ia32 and rearranged on x64. -- layout change for String: meaning of LSB bit is fliped (1 now means hash not computed); on x64 padding is added. -- layout of maps is _not_ changed. Map space is currently iterated in a special way. - Cardmarking write barrier. New barrier handles large objects and normal objects in a similar fashion (no more additional space for pointer tracking is required, no conditional branches in WB code). Review URL: http://codereview.chromium.org/2101002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4685 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 May, 2010 1 commit
-
-
sgjesse@chromium.org authored
The full compiler will now be used for all code compiler when debugging is active. As the code generated by the full compiler is much simpler it will be easier to make debugging work better when using that code. To ensure that all code debugged is from the full compiler all functions will have to be recompiled when starting debugging. Initialing debugging already turns off the code cache. Review URL: http://codereview.chromium.org/2120009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4680 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 May, 2010 1 commit
-
-
vegorov@chromium.org authored
Collect cumulative (--print-cumulative-gc-stat) and per collection (--trace-gc-nvp) GC statistics and output it in a machine-readable name=value format. Review URL: http://codereview.chromium.org/2132005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4675 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 May, 2010 2 commits
-
-
erik.corry@gmail.com authored
under one flag. Also other cosmetic changes to peephole optimization. Review URL: http://codereview.chromium.org/2104006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4663 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
http://codereview.chromium.org/2004006 for Subrato De. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4662 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Apr, 2010 1 commit
-
-
erik.corry@gmail.com authored
off by default, to speed up debug mode. Review URL: http://codereview.chromium.org/1787006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4521 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Apr, 2010 1 commit
-
-
sgjesse@chromium.org authored
In the CEntryStub keep track of the actual skew from the correct alignment to ensure proper alignment before calling the runtime. Add checks to test the expected skew when running on hardware. Use the PrepareCallCFunction/CallCFunction in a few other places. Add check to the ARM simulator for correct alignment. Add option --sim-stack-alignment to set the stack alignment in the simulator. Currntly only values 4 and 8 makes sense. 8 is the default to make snapshots generated with the simulator work on hardware requiring 8 byte stack alignment. Review URL: http://codereview.chromium.org/1530043 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4425 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Apr, 2010 1 commit
-
-
mikhail.naganov@gmail.com authored
This is to make possible enabling usage of the new profiling subsystem in Chromium without much hassle. The idea is pretty simple: unless the new profiling API is used, all works as usual, as soon as Chromium starts to use the new API, it will work too. Review URL: http://codereview.chromium.org/1635005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4382 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-