- 23 Jul, 2015 30 commits
-
-
mbrandy authored
Port 7877c4e0 Original commit message: Adds basic support for generation of interpreter bytecode handler code snippets. The InterpreterAssembler class exposes a set of low level, interpreter specific operations which can be used to build a Turbofan graph. The Interpreter class generates a bytecode handler snippet for each bytecode by assembling operations using an InterpreterAssembler. Currently only two simple bytecodes are supported: LoadLiteral0 and Return. R=rmcilroy@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1250723003 Cr-Commit-Position: refs/heads/master@{#29822}
-
mbrandy authored
Port bc8041dc Original commit message: Previous to this CL, ICs used a slightly different code idiom to get to C++ code from generated code than runtime intrinsics, using an IC_Utility class that in essence provided exactly the same functionality as Runtime::FunctionForId, but in its own quirky way. This CL unifies the two mechanisms, folding IC_Utility away by making all IC entry points in C++ code, e.g. IC miss handlers, full-fledged runtime intrinsics. This makes it possible to eliminate a bunch of ad-hoc declarations and adapters that the IC system had to needlessly re-invent. As a bonus and the original reason for this yak-shave: IC-related C++ runtime functions are now callable from TurboFan. R=danno@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1249433004 Cr-Commit-Position: refs/heads/master@{#29821}
-
mbrandy authored
Port 3334b830 Original commit message; All of this is controlled by the CallDescriptor. It's simply the case that if you specify less registers than the function arity calls for, the rest are assumed to be on the stack. Bailout handlers accept these constant stack arguments too. R=mvstanton@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1256563002 Cr-Commit-Position: refs/heads/master@{#29820}
-
mbrandy authored
Port 26ffee2c Original commit message: It's just the same as StoreTransitionDescriptor. R=mvstanton@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1246143004 Cr-Commit-Position: refs/heads/master@{#29819}
-
rmcilroy authored
Fix GCMole warning from r29814 (7877c4e0). BUG=v8:4280 LOG=N NOTREECHECKS=true TBR=machenbach,mstarzinger Review URL: https://codereview.chromium.org/1243893004 Cr-Commit-Position: refs/heads/master@{#29818}
-
mstarzinger authored
This mostly removes dead code and obsolete special cases from the RawMachineAssembler::MakeNode helper, that shouldn't be necessary anymore. R=rmcilroy@chromium.org Review URL: https://codereview.chromium.org/1243253005 Cr-Commit-Position: refs/heads/master@{#29817}
-
hichris123 authored
According to the ECMA spec, a 24th hour is allowed if the minutes, seconds, and milliseconds are all zero (i.e. it's midnight). Previously, we parsed the date correctly, however, we failed to account in all checks for the possibility of a 24th hour. This CL changes the check to allow a 24th hour if it's exactly midnight. BUG=chromium:174609 LOG=Y Review URL: https://codereview.chromium.org/1240093005 Cr-Commit-Position: refs/heads/master@{#29816}
-
rossberg authored
Gets rid of IsSimpleParameterList predicate. R=mstarzinger@chromium.org, caitpotter88@gmail.com BUG= Review URL: https://codereview.chromium.org/1251603004 Cr-Commit-Position: refs/heads/master@{#29815}
-
rmcilroy authored
Adds basic support for generation of interpreter bytecode handler code snippets. The InterpreterAssembler class exposes a set of low level, interpreter specific operations which can be used to build a Turbofan graph. The Interpreter class generates a bytecode handler snippet for each bytecode by assembling operations using an InterpreterAssembler. Currently only two simple bytecodes are supported: LoadLiteral0 and Return. BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1239793002 Cr-Commit-Position: refs/heads/master@{#29814}
-
mvstanton authored
All of this is controlled by the CallDescriptor. It's simply the case that if you specify less registers than the function arity calls for, the rest are assumed to be on the stack. Bailout handlers accept these constant stack arguments too. BUG= Review URL: https://codereview.chromium.org/1250563004 Cr-Commit-Position: refs/heads/master@{#29813}
-
rossberg authored
While at it, remove the notion of INTERNAL variables. @caitp: Took some parts from your CL, since I was blocked on the temp scope bug. R=mstarzinger@chromium.org BUG=512574 LOG=N Review URL: https://codereview.chromium.org/1250513004 Cr-Commit-Position: refs/heads/master@{#29812}
-
danno authored
Previous to this CL, ICs used a slightly different code idiom to get to C++ code from generated code than runtime intrinsics, using an IC_Utility class that in essence provided exactly the same functionality as Runtime::FunctionForId, but in its own quirky way. This CL unifies the two mechanisms, folding IC_Utility away by making all IC entry points in C++ code, e.g. IC miss handlers, full-fledged runtime intrinsics. This makes it possible to eliminate a bunch of ad-hoc declarations and adapters that the IC system had to needlessly re-invent. As a bonus and the original reason for this yak-shave: IC-related C++ runtime functions are now callable from TurboFan. Review URL: https://codereview.chromium.org/1248303002 Cr-Commit-Position: refs/heads/master@{#29811}
-
yangguo authored
Nobody seems to use it. A good alternative is rlwrap. R=jochen@chromium.org Review URL: https://codereview.chromium.org/1250223002 Cr-Commit-Position: refs/heads/master@{#29810}
-
machenbach authored
There are many test names in the v8 code base that prefix others, which makes it hard to only run those tests. BUG=chromium:511215 LOG=n NOTRY=true Review URL: https://codereview.chromium.org/1251363002 Cr-Commit-Position: refs/heads/master@{#29809}
-
jochen authored
BUG=v8:3996 R=jarin@chromium.org LOG=n Review URL: https://codereview.chromium.org/1249723005 Cr-Commit-Position: refs/heads/master@{#29808}
-
rossberg authored
In particular, rename FormalParameterParsingState and friends to FormalParameters etc. This should not change any logic, but is a preparatory CL for a bunch of follow-up fixes and clean-ups. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1247443004 Cr-Commit-Position: refs/heads/master@{#29807}
-
machenbach authored
BUG= Review URL: https://codereview.chromium.org/1253643003 Cr-Commit-Position: refs/heads/master@{#29806}
-
yangguo authored
R=mvstanton@chromium.org Committed: https://crrev.com/937d4efbf9c399339fdc8e041bec8e80baa7b58f Cr-Commit-Position: refs/heads/master@{#29798} Review URL: https://codereview.chromium.org/1255613002 Cr-Commit-Position: refs/heads/master@{#29805}
-
hpayer authored
Use a lock in pages to synchronize sweeper threads to allow others to wait on concurrently swept pages. BUG= Review URL: https://codereview.chromium.org/1244353002 Cr-Commit-Position: refs/heads/master@{#29804}
-
rossberg authored
R=adamk@chromium.org BUG=v8:3330 LOG=N Review URL: https://codereview.chromium.org/1244423003 Cr-Commit-Position: refs/heads/master@{#29803}
-
yangguo authored
Revert of Reduce duplicate code in full-codegen across platforms. (patchset #1 id:1 of https://codereview.chromium.org/1255613002/) Reason for revert: breaks mips Original issue's description: > Reduce duplicate code in full-codegen across platforms. > > R=mvstanton@chromium.org > > Committed: https://crrev.com/937d4efbf9c399339fdc8e041bec8e80baa7b58f > Cr-Commit-Position: refs/heads/master@{#29798} TBR=mvstanton@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1252513004 Cr-Commit-Position: refs/heads/master@{#29802}
-
yangguo authored
The code is unmaintained and full of errors... but this CL wipes them all away. Nobody seems to use it anyways. R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/1243213004 Cr-Commit-Position: refs/heads/master@{#29801}
-
mstarzinger authored
R=jarin@chromium.org Review URL: https://codereview.chromium.org/1248263003 Cr-Commit-Position: refs/heads/master@{#29800}
-
mstarzinger authored
Using the GraphBuilder base class forces each node creation to go through a virtual function dispatch just for the sake of saving the duplication of the NewNode helper methods. In total that added up to saving minus (sic!) six lines of code. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1252093002 Cr-Commit-Position: refs/heads/master@{#29799}
-
yangguo authored
R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/1255613002 Cr-Commit-Position: refs/heads/master@{#29798}
-
yurys authored
There is already non-throwing version FrameMirror.restart and RestartFrame in the livedit-debugger.js just adds a throwing wrapper around it. Also NEEDS_STEP_IN_PROPERTY_NAME was removed, the client code can decide based on the stack_modified field if "step in" is required. Chromium side was fixed in https://codereview.chromium.org/1249013002/ BUG=None LOG=N Review URL: https://codereview.chromium.org/1247363002 Cr-Commit-Position: refs/heads/master@{#29797}
-
Ilija.Pavlovic authored
In simulator data trace, DSLL did not print result and BAL/BGEZAL omitted result from an instruction executed in delay slot. TEST=cctest/test-assembler-mips[64] BUG= Review URL: https://codereview.chromium.org/1245173002 Cr-Commit-Position: refs/heads/master@{#29796}
-
paul.lind authored
BUG= Review URL: https://codereview.chromium.org/1249703005 Cr-Commit-Position: refs/heads/master@{#29795}
-
adamk authored
R=littledan@chromium.org BUG=v8:4311 LOG=n Review URL: https://codereview.chromium.org/1242623002 Cr-Commit-Position: refs/heads/master@{#29794}
-
v8-autoroll authored
Rolling v8/tools/clang to 4943801a353f2f58e7268e17803d87cf78f2f732 TBR=machenbach@chromium.org Review URL: https://codereview.chromium.org/1253623002 Cr-Commit-Position: refs/heads/master@{#29793}
-
- 22 Jul, 2015 10 commits
-
-
mstarzinger authored
R=titzer@chromium.org Review URL: https://codereview.chromium.org/1248743003 Cr-Commit-Position: refs/heads/master@{#29792}
-
danno authored
Review URL: https://codereview.chromium.org/1245523002 Cr-Commit-Position: refs/heads/master@{#29791}
-
mstarzinger authored
This preserves the context-independent entry in an optimized code map across GCs when the code is considered young (i.e. less than 3 ages). Note that any context-dependent entry for the same code will still be flushed immediately when the respective context dies, hence context lifetime is not increased. R=hpayer@chromium.org Review URL: https://codereview.chromium.org/1252463002 Cr-Commit-Position: refs/heads/master@{#29790}
-
mvstanton authored
It's just the same as StoreTransitionDescriptor. BUG= Review URL: https://codereview.chromium.org/1248973002 Cr-Commit-Position: refs/heads/master@{#29789}
-
mstarzinger authored
This allows the optimized code map to contain no context-dependent entries, but still hold one context-independent entry. This is a precursor to extending the lifetime of the context-independent entry. R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/1249543005 Cr-Commit-Position: refs/heads/master@{#29788}
-
mstarzinger authored
This fixes a recent regression where the register holding the original receiver was pushed onto the stack before the internal frame within the CallStubInRecordCallTarget helper was created. That in turn confused the stack walker when allocations in these stubs failed. R=mvstanton@chromium.org BUG=chromium:512711 LOG=N Review URL: https://codereview.chromium.org/1245043003 Cr-Commit-Position: refs/heads/master@{#29787}
-
jochen authored
The layout of fixed typed array base is then capable of handling external typed arrays as well. In a follow-up CL, I'll delete external typed arrays, and use fixed typed array base instead BUG=v8:3996 R=jarin@chromium.org,mstarzinger@chromium.org LOG=n Review URL: https://codereview.chromium.org/1248483007 Cr-Commit-Position: refs/heads/master@{#29786}
-
mstarzinger authored
This fixes a recent regression where the register usually holding the original receiver was pushed onto the stack even when the stub was not compiled for super calls (i.e. IsSuperConstructorCall). This led to untagged values being present in the stack frame. R=jacob.bramley@arm.com BUG=chromium:512573 LOG=N Review URL: https://codereview.chromium.org/1241223003 Cr-Commit-Position: refs/heads/master@{#29785}
-
yangguo authored
The background parser checks for debugger state in its constructor. This is not good enough, since the debugger state may change afterwards, but before compiling takes place. As the background parser can only parse lazily, this could mean that due to debugging, we try to eagerly compile an inner function we have not eagerly parsed. R=jochen@chromium.org Review URL: https://codereview.chromium.org/1247743002 Cr-Commit-Position: refs/heads/master@{#29784}
-
mtrofin authored
Unit tests for the live range conflict detection mechanism (CoalescedLiveRanges) in the Greedy Allocator. Consolidated conflict detection and traversal logic in CoalescedLiveRanges to avoid duplication in both code and testing. In addition, this change achieves better separation between CoalescedLiveRanges and other register allocator components, improving testability and maintainability. BUG= Review URL: https://codereview.chromium.org/1219063017 Cr-Commit-Position: refs/heads/master@{#29783}
-