- 26 Jan, 2015 1 commit
-
-
ulan authored
BUG= Review URL: https://codereview.chromium.org/873233002 Cr-Commit-Position: refs/heads/master@{#26274}
-
- 22 Jan, 2015 1 commit
-
-
ulan authored
This prevents GC from observing code objects with out-of-sync weak dependencies. BUG=v8:3823 LOG=N Review URL: https://codereview.chromium.org/866723002 Cr-Commit-Position: refs/heads/master@{#26225}
-
- 20 Jan, 2015 1 commit
-
-
ulan authored
There is no need to embed function pointer in code. BUG=v8:3823 LOG=N Review URL: https://codereview.chromium.org/817483005 Cr-Commit-Position: refs/heads/master@{#26152}
-
- 22 Dec, 2014 1 commit
-
-
chunyang.dai authored
This issue is exposed by CL https://codereview.chromium.org/807273003. The DeoptimizeIf(...) function will generate more Assembler code and the distance between the link point and the bind point is larger then near link distance (127) for labels. BUG= Review URL: https://codereview.chromium.org/820963002 Cr-Commit-Position: refs/heads/master@{#25914}
-
- 12 Dec, 2014 2 commits
-
-
Michael Stanton authored
This patch finally allows running and passing tests with vector-based Load and KeyedLoad ICs. BUG= R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/767743002 Cr-Commit-Position: refs/heads/master@{#25800}
-
svenpanne authored
FINAL implies OVERRIDE, which in turn implies virtual, so there's no need to use more than one of these. The Google C++ style guide even requires this, see http://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Inheritance. While we're here, port r24662 to x87. The net result is that v8 compiles again with a current clang. BUG=v8:3753 LOG=y Review URL: https://codereview.chromium.org/797943002 Cr-Commit-Position: refs/heads/master@{#25792}
-
- 10 Nov, 2014 2 commits
-
-
jkummerow@chromium.org authored
BUG=chromium:431602 LOG=y R=jarin@chromium.org Review URL: https://codereview.chromium.org/714663002 Cr-Commit-Position: refs/heads/master@{#25249} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25249 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
weiliang.lin@intel.com authored
The incorrect parameter number is set when recording safepoint. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/716463003 Patch from Chunyang Dai <chunyang.dai@intel.com>. Cr-Commit-Position: refs/heads/master@{#25226} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25226 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Nov, 2014 1 commit
-
-
weiliang.lin@intel.com authored
The default double precision control of FPU is extended double-precision. While the number definition for JavaScript is double-precision. We use the FPU control word to set the doulbe precision and replace the original solution which store the data to memory and load it again. This patch also fixes the error that Sunspider 1.0.2 can not run with V8 if sse2 support is disabled. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/700053003 Patch from Chunyang Dai <chunyang.dai@intel.com>. Cr-Commit-Position: refs/heads/master@{#25125} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25125 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Oct, 2014 1 commit
-
-
weiliang.lin@intel.com authored
port r24732. original commit message: vector-based ICs did not update type feedback counts correctly. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/669823002 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24756 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Oct, 2014 1 commit
-
-
weiliang.lin@intel.com authored
port r24528. original commit message: Introduce FeedbackVectorSlot type - better than int. It's good to have typing around this value. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/645323002 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24540 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Oct, 2014 1 commit
-
-
weiliang.lin@intel.com authored
port r24519. original commit message: Teach TurboFan to call vector-based ICs. Additional static information needs to be passed to Load and KeyedLoad calls if --vector-ics is turned on BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/645273002 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24537 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Sep, 2014 1 commit
-
-
weiliang.lin@intel.com authored
The test mjsunit/regress/regress-sqrt compares the result of Math.sqrt function when using full-compiler and crankshaft compiler seperately. But according to glibc bug fixing(https://sourceware.org/bugzilla/show_bug.cgi?id=14032). The glibc implementation of std::sqrt() (It is invoked in the generated code when full-compiler is used.) will change since glibc 2.19. In order to keep consistence of Math.sqrt translation in crankshaft compiler and the pass of mjsunit/regress/regress-sqrt. we translate the Math.sqrt func by calling the runtime function. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/606403002 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24271 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Sep, 2014 1 commit
-
-
weiliang.lin@intel.com authored
Two more DeoptimizeIf(...) are added so the branch distance changed. we need to use Label::kFar. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/598353002 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24226 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Sep, 2014 3 commits
-
-
weiliang.lin@intel.com authored
port r24151. original commit message: Forgot a few kNear occurences, only happens with --deopt-every-n-times. Death to manual jump distance calculation! :-P BUG= R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/595263002 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24189 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
weiliang.lin@intel.com authored
port r24146. original commit message: Made the detailed reason for deopts mandatory on ia32. Unified and improved things. The number of different detail strings has been reduced a bit without any loss of information. Furthermore, DoubleToI is a bit more informative now. Tiny reason fixes. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/597003003 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24169 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
weiliang.lin@intel.com authored
port r24133. On X87 this check should be unnecessary too. original commit message: Removed superfluous deopt for ROR on ia32. We only synthesize a ROR when we have an expression with a toplevel '|', which returns a signed value by definition, so deopting on negative values is not needed. ia32 was the only platform where this was done, all other didn't have the check. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/589383003 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24160 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Sep, 2014 1 commit
-
-
weiliang.lin@intel.com authored
port r24123. R24123 does not cover all required code change in X87. original commit message: Further improve deopt reason output. * Make the detailed deopt reason mandatory on x64, other platforms will follow in separate CLs. * Extracted and improved jump table entry sharing logic: When --trace-deopt is on, we get separate entries for different deopt reasons. This enables us to distinguish the several reasons single instructions can have. * Don't emit superfluous jump table comments: The bailout ID is still visible, and the jump table entry number is not interesting (but easy to determine if really needed). * Unify the internal name of the jump table member across platforms. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/589313002 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24129 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Sep, 2014 4 commits
-
-
svenpanne@chromium.org authored
* Make the detailed deopt reason mandatory on x64, other platforms will follow in separate CLs. * Extracted and improved jump table entry sharing logic: When --trace-deopt is on, we get separate entries for different deopt reasons. This enables us to distinguish the several reasons single instructions can have. * Don't emit superfluous jump table comments: The bailout ID is still visible, and the jump table entry number is not interesting (but easy to determine if really needed). * Unify the internal name of the jump table member across platforms. R=jarin@chromium.org Review URL: https://codereview.chromium.org/595513002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24123 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
This way the deoptimization reasons are actually threaded through to the jump table. Tiny cleanup of related MIPS/MIPS64 code on the way. R=jarin@chromium.org Review URL: https://codereview.chromium.org/585423002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24111 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
R=jarin@chromium.org Review URL: https://codereview.chromium.org/587223002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24109 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
As discussed in https://codereview.chromium.org/582743002/, here a mechanical refactoring... R=jarin@chromium.org Review URL: https://codereview.chromium.org/587623002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24103 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Sep, 2014 1 commit
-
-
weiliang.lin@intel.com authored
BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/579713002 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24102 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Sep, 2014 2 commits
-
-
svenpanne@chromium.org authored
For a given address/type pair we should always find a deoptimization bailout ID, otherwise something is wrong. This was already asserted on ARM, but we now do this consistently on all platforms. Removed some usesless naming creativity on the way. R=jarin@chromium.org Review URL: https://codereview.chromium.org/587473003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24077 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
Note that we still need to migrate from sometimes emitting those comments by hand to passing a reason explicitly, but this can be done incrementally in separate CLs. R=jarin@chromium.org Review URL: https://codereview.chromium.org/582743002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24061 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Sep, 2014 1 commit
-
-
svenpanne@chromium.org authored
This is a purely mechanical refactoring and a first step towards being able to report more helpful deoptimization reasons. With this refactoring, we know at least the mnemonic of the instruction causing the deopt, although this is not used yet. Future steps will be using the mnemonic, passing additional explicit deopt reasons and removing the fragile machinery of searching for code comments. R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/559143003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Sep, 2014 2 commits
-
-
svenpanne@chromium.org authored
Every DeoptimizeIf should be preceded by a RecordComment explaining the reason. In the long run, the reason should be an argument of DeoptimizeIf, but we're not there yet. On x87, things are a bit ugly due to some pushing/popping, so if somebody feels inclined to improve this: Feel free. Probably the right approach would be reloading instead of the push/pop horror. Another thing is our inconsistent handling of the "done" continuation of deferred code on the various platforms, I made tiny changes on the way, but this should better be unified somehow, with all those micro-optimizations removed. R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/578583002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23996 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
weiliang.lin@intel.com authored
port r23977. original commit message: Removing ic.h from code-stubs.h CodeStubs use state types defined in ic.h, but this has the unfortunate effect of spreading ic.h all over the place. Instead, define these shared state types in ic-public.h and allow ic.h to concern itself with internal state change of the ICs. More work could/should be done here, but this is a first step. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/573123003 Patch from Jing Bao <jing.bao@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23992 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Sep, 2014 2 commits
-
-
weiliang.lin@intel.com authored
port r23877. original commit message: Turbofan needs a code handle and a CallInterfaceDescriptor. At the same time we spread knowledge about how to create the initial IC code object too widely. Consolidate code creation and unify it with a descriptor via CodeFactory. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/567953002 Patch from Jing Bao <jing.bao@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23900 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
weiliang.lin@intel.com authored
port r23772. original commit message: To aid vector-based load ic work, we need to be able to handle the megamorphic load case in hydrogen. A simple approach is to wrap the probe activity in a hydrogen instruction. The instruction is novel in that it always tail-calls away. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/564683002 Patch from Jing Bao <jing.bao@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23889 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Sep, 2014 1 commit
-
-
arv@chromium.org authored
This is governed by the harmony-object-literals flag. BUG=v8:3516 LOG=Y R=rossberg@chromium.org Review URL: https://codereview.chromium.org/477263002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Sep, 2014 1 commit
-
-
bmeurer@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/553843002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23767 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Sep, 2014 1 commit
-
-
weiliang.lin@intel.com authored
port r23639 original commit message: Make concrete classes for individual call descriptors. The ic-convention classes that hold register specifications are merged into these new call descriptor classes, which should represent a final home for that information. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/544943002 Patch from Jing Bao <jing.bao@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23708 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Sep, 2014 1 commit
-
-
weiliang.lin@intel.com authored
port r23617. original commit message: First step to cleanup the power-of-2 mess BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/532133002 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23632 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Sep, 2014 1 commit
-
-
bmeurer@chromium.org authored
Less useless creativity is best creativity! R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/526223002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23579 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 Aug, 2014 1 commit
-
-
weiliang.lin@intel.com authored
port r23391. original commit message: Move register conventions out of the IC classes. A change to a convention shouldn't require recompilation of ic.h/.cc. BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/513533003 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 Aug, 2014 1 commit
-
-
weiliang.lin@intel.com authored
port r23359. original commit message: Eliminate code duplication in lithium calls to vector-based LoadICs BUG= R=weiliang.lin@intel.com Review URL: https://codereview.chromium.org/505103002 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23382 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Aug, 2014 2 commits
-
-
weiliang.lin@intel.com authored
x87: Move IC code into a subdir and move ic-compilation related code from stub-cache into ic-compiler port r23306. original commit message: Move IC code into a subdir and move ic-compilation related code from stub-cache into ic-compiler. BUG= R=verwaest@chromium.org, weiliang.lin@intel.com Review URL: https://codereview.chromium.org/500923002 Patch from Chunyang Dai <chunyang.dai@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23339 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jarin@chromium.org authored
Since the deopt patch address needs to be available during GC to resolve safepoints, we need to move it to the code object (instead of the deoptimization input data) - accessing a separate fixed array is not safe during GC. This CL adds a deoptimization_pc field to each safepoint. The fields points to the deoptimization block. The CL also fixes wrong register allocator constraints for frame states on calls. These should always live on the stack because registers are not preserved during a call. BUG= R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/504493002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23334 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Aug, 2014 1 commit
-
-
yangguo@chromium.org authored
R=marja@chromium.org Review URL: https://codereview.chromium.org/471923002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23141 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-