sgjesse@chromium.org
1d388d0778
Moved the code generation for debug break stubs from builtins* to debug*. From builtins* all code generation delegate to debug*. Added files debug-ia32.cc and debug-arm.cc for platfoem specific code generation of debugger stubs.
...
Removed a dead file reference (frames-ia32-inl.h) from the Visual Studio project.
Updated the ARM Visual Studio project to build again by adding all the RegExp files.
Review URL: http://codereview.chromium.org/13657
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@947 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-09 11:12:14 +00:00
olehougaard
f1aa70ac24
Simplify the logic determining whether to report an exception.
...
Review URL: http://codereview.chromium.org/13283
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@946 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-09 10:36:31 +00:00
olehougaard
ccf388fc64
Fixing a bug where a try-finally block obscured a try-catch block when registering an external try-catch handler.
...
Review URL: http://codereview.chromium.org/13658
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@945 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-09 10:16:38 +00:00
sgjesse@chromium.org
86df8fc27c
Fixed compiler warning C4244 when compiling with the ARM simulator in Windows.
...
Review URL: http://codereview.chromium.org/13282
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@944 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-09 09:43:16 +00:00
deanm@chromium.org
fa04fa8a19
Make Logger::SuspectReadEvent extract the class name from the object. This makes the lone caller cleaner, and also avoids a tiny bit of work in the default case of not running with --log-suspect.
...
Review URL: http://codereview.chromium.org/13655
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@943 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-09 09:19:02 +00:00
erik.corry@gmail.com
df727ffd43
Fix build (someone tell gcc you can't take the address of a static
...
const int and someone tell MSVC it's OK to define a static const int
in a .cc file).
Review URL: http://codereview.chromium.org/13656
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@942 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-09 09:17:41 +00:00
erik.corry@gmail.com
7b4b4959c8
* Have an ASCII and a UC16 interpreter for Irregexp bytecodes -
...
never have to convert an ASCII string to UC16 for Irregexp.
* Generate slightly different code when we know the subject string
is ASCII.
Review URL: http://codereview.chromium.org/13247
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@941 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-09 08:30:49 +00:00
lrn@chromium.org
67c26a869f
Minor presentation changes
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@938 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-08 13:33:24 +00:00
lrn@chromium.org
5178af89fa
Irregexp is specialized on subject character type.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@937 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-08 12:43:01 +00:00
ager@chromium.org
c023ec3a77
Fix trailing whitespace.
...
TBR=sgjesse
Review URL: http://codereview.chromium.org/13616
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@936 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-08 11:23:38 +00:00
erik.corry@gmail.com
c642237b78
Fixes to IA32 code generator to cope with new
...
code generation machinery.
Review URL: http://codereview.chromium.org/13244
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@935 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-08 10:33:10 +00:00
ager@chromium.org
1c7c655193
Make sure to set property attributes in GetProperty in the case of
...
failed access checks.
Added assert to GetPropertyWithReceiver which was hit by our tests in
debug mode.
Review URL: http://codereview.chromium.org/13242
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@934 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-08 10:29:03 +00:00
sgjesse@chromium.org
8d8012586c
Moved the builtins used by the debugger to a separate list.
...
Review URL: http://codereview.chromium.org/13241
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@933 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-08 10:16:57 +00:00
erik.corry@gmail.com
8bbd1be424
Irregexp (bytecodes) don't forget to update current position
...
on a no-case successful backref.
Review URL: http://codereview.chromium.org/13615
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@932 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-08 09:43:34 +00:00
erik.corry@gmail.com
bf9d096326
Improve speed of String.replace by around 33% by not constructing
...
sliced strings for the interstices of the matches. This can be
speeded up further.
Review URL: http://codereview.chromium.org/13614
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@931 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-08 09:22:24 +00:00
erik.corry@gmail.com
ba09ec5e89
Irregexp:
...
* Facility for generating a node several ways. This allows
code to be generated for a node knowing where it is trying
to match relative to the 'current position' and it allows
code to be generated that knows where to backtrack to. Both
allow dramatic reductions in the amount of popping and pushing
on the stack and the number of indirect jumps.
* Generate special backtracking for greedy quantifiers on
constant-length atoms. This allows .* to run in constant
space relative to input string size.
* When we are checking a long sequence of characters or character
classes in the input then we do them right to left and only the
first (rightmost) needs to check for end-of-string.
* Record the pattern in the profile instead of just <CompiledRegExp>
* Nodes no longer contain an on_failure_ node. This was only used
for lookaheads and they are now handled with a choice node instead.
Review URL: http://codereview.chromium.org/12900
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@930 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-08 09:22:12 +00:00
iposva@chromium.org
72c07041a8
- Simplify the code slightly by using Max().
...
TBR=kasperl
Review URL: http://codereview.chromium.org/13210
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@928 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-05 21:51:46 +00:00
iposva@chromium.org
f455d7afc4
Fix lint error.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@927 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-05 17:53:03 +00:00
iposva@chromium.org
925a27c023
Partial fix for issue 173:
...
- Do not keep growing the zone segment size exponentially. By putting
an upper limit on the segment size we limit the requirements for
contiguous memory allocation.
Review URL: http://codereview.chromium.org/12984
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@926 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-05 17:37:12 +00:00
olehougaard
89855a08d9
Fixing exception reporting so that a verbose TryCatch handler works again.
...
Review URL: http://codereview.chromium.org/13173
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@924 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-05 13:30:55 +00:00
sgjesse@chromium.org
07e14578c0
Fixed the caching of counters. This also fixes the --dump-counters which reads the counters from the cache when dumping.
...
Review URL: http://codereview.chromium.org/13171
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@923 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-05 10:40:13 +00:00
olehougaard
9378b1afb4
Checking and reporting for stack overflow in the right places.
...
Review URL: http://codereview.chromium.org/12986
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-05 09:57:36 +00:00
lrn@chromium.org
ed4e792cd5
Makes irregexp-ia32 feature complete wrt. regexps.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-05 09:18:55 +00:00
olehougaard
30204a0c00
Added reporting compilation errors.
...
Review URL: http://codereview.chromium.org/13125
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@919 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-05 08:35:52 +00:00
ager@chromium.org
15e98d12e6
Pull out revision 915 and 916 to get a green builder. I believe the
...
issue has been resolved and these changes can go back in along with
the fix tomorrow.
TBR=olehougaard
Review URL: http://codereview.chromium.org/12945
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@918 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-04 14:35:31 +00:00
sgjesse@chromium.org
99fb47aa06
Added type method to the debug events.
...
Fixed handling of script break points past the length of the script.
Review URL: http://codereview.chromium.org/13126
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@917 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-04 13:39:07 +00:00
olehougaard
cb6a3e2f0a
Reporting uncaught errors at the boundary between C++ and JS instead of trying to guess whether they get caught at the time of the throw.
...
Review URL: http://codereview.chromium.org/12901
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@915 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-04 08:47:31 +00:00
lrn@chromium.org
2fd187d0cd
ByteArrayProvider increments free-pointer correctly.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@914 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-04 08:33:32 +00:00
kmillikin@chromium.org
291147e2f1
Enable printing code generated for builtins in release mode when the
...
disassembler is enabled. It's convenient to be able to see them.
Review URL: http://codereview.chromium.org/12904
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@913 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-04 08:26:08 +00:00
christian.plesner.hansen@gmail.com
2ce3df8336
Fixed lint error.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@912 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-03 16:21:19 +00:00
christian.plesner.hansen@gmail.com
f56c10598b
Made d8 console=readline work on leopard.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@910 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-03 15:51:16 +00:00
ager@chromium.org
73398bcf17
Preparing to push to trunk.
...
Review URL: http://codereview.chromium.org/13091
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@909 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-03 13:58:36 +00:00
lrn@chromium.org
dd9be4ef58
Matching a back-reference must handle unbound start-register (but can assume that if start register is bound, then end register is bound too).
...
After matching a back reference, the character position is advanced past
the match
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@908 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-03 13:24:34 +00:00
ager@chromium.org
c1c8603a13
Follow jsc in throwing an exception when using test or exec on a
...
regexp with no input.
Fixed problem with assertThrows.
Deleted test that tests arbitrary limits on the sizes of regular
expressions.
Review URL: http://codereview.chromium.org/13088
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@907 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-03 12:47:21 +00:00
christian.plesner.hansen@gmail.com
dc2077465f
Added support in d8 for memory-mapped counters and added the python
...
stats-viewer tool.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@904 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-03 09:35:21 +00:00
christian.plesner.hansen@gmail.com
12774ab2d8
Fixed issue where regexps were parsed without having set up a zone
...
scope, leading to zone exhaustion. Added assertion that a zone scope
exists on zone allocation.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@898 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-02 14:00:24 +00:00
whessev8
739cf6802e
Change Windows daylight saving time calculations to
...
use C stdlib local time functions, not Win32 functions.
Win32 time functions slowed down with Windows XP SP3.
Change all platforms to use equivalent years between 2008 and
2035 for years outside the range 1970..2037.
Review URL: http://codereview.chromium.org/12824
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@896 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-02 13:20:00 +00:00
lrn@chromium.org
9aaa8d985b
Builds on Windows too.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-02 10:19:10 +00:00
lrn@chromium.org
70a3ba75be
Optimization of single character indexOf. Gives small improvement on GCC4.2, but large improvement on GCC 4.3 (which was much worse on that particular code).
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@887 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-02 09:50:39 +00:00
christian.plesner.hansen@gmail.com
cc3e472843
- Fixed regexp logging issue.
...
- Removed use of std::set.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@883 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-02 08:16:12 +00:00
christian.plesner.hansen@gmail.com
917e91d1f2
- Added some expansion of assertions.
...
- Splitting of character classes into word and non-word parts.
- A bunch of refactorings.
- Made dispatch table construction lazy.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@880 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-01 15:42:35 +00:00
christian.plesner.hansen@gmail.com
5c39d9c741
Added checking in the regular expression parser that we're below the
...
stack limit and that the zone allocation limit hasn't been met.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@879 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-01 15:32:20 +00:00
lrn@chromium.org
b07b40b335
Allow the non-spec [a-\d] (i.e., ending a range with a character class) in RegExps.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@877 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-01 14:29:28 +00:00
lrn@chromium.org
2110b71373
Added assignment to variable after UNIMPLEMENTED macro, to keep compiler happy.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@875 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-01 11:46:08 +00:00
lrn@chromium.org
467de7e8cf
Fixes stray IA32-reference in ARM builds
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@874 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-01 10:17:24 +00:00
lrn@chromium.org
0269851619
Fixes (last?) bugs in regexp-ia32 core functionality. All tests run!
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@873 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-01 09:57:14 +00:00
ager@chromium.org
2c2ae533ec
Remove a couple of instances of wchar_t after counters change.
...
Review URL: http://codereview.chromium.org/12820
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@872 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-01 07:56:57 +00:00
ager@chromium.org
88d4740d89
Commiting Evan's change to use char instead of wchar_t for counter names.
...
Code review URL:
http://codereview.chromium.org/13011/show
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@871 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-01 07:40:43 +00:00
iposva@chromium.org
f87ad6741f
Fix issue http://code.google.com/p/v8/issues/detail?id=166 which I have run
...
across as well.
TBR=plesner
Review URL: http://codereview.chromium.org/13007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@870 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-11-30 00:19:08 +00:00
erik.corry@gmail.com
038c2c6f27
Fix build error in debug mode by making sure the tracer has the
...
new method too.
Fix spacing in tracer.
Review URL: http://codereview.chromium.org/12806
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@867 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-11-28 12:11:36 +00:00