- 17 Jun, 2015 3 commits
-
-
jkummerow authored
- fix truthfulness of comments - use InitializeFieldsWithFiller more consistently - use unsigned comparisons for pointers No change in functionality intended. Bonus: improve JavaScriptFrame::Print() for an enhanced debugging experience: - print PC of each frame - print the function's source also for optimized frames Review URL: https://codereview.chromium.org/1186823003 Cr-Commit-Position: refs/heads/master@{#29082}
-
dusan.milosavljevic authored
TEST==mjsunit/asm/double-lo BUG= Review URL: https://codereview.chromium.org/1170923004 Cr-Commit-Position: refs/heads/master@{#29078}
-
svenpanne authored
The remaining uses need some non-mechanical work: * non-standard-layout type, probably due to mixed access control * extended field designators Review URL: https://codereview.chromium.org/1173343006 Cr-Commit-Position: refs/heads/master@{#29071}
-
- 15 Jun, 2015 4 commits
-
-
littledan authored
This patch implements %_IsTypedArray in fullcodegen, Hydrogen and Turbofan in order to implement fast type checks to enable ES6 TypedArray features and semantics efficiently. R=adamk,titzer LOG=Y BUG=v8:4085 Review URL: https://codereview.chromium.org/1183213002 Cr-Commit-Position: refs/heads/master@{#29033}
-
balazs.kilvady authored
Port cdc43bc5 Original review: https://codereview.chromium.org/1133163005/ Original commit message: Enable clang's shorten-64-to-32 warning flag on ARM64, and fix the warnings that arise. BUG= Review URL: https://codereview.chromium.org/1182193004 Cr-Commit-Position: refs/heads/master@{#29024}
-
machenbach authored
Revert of Fix clobbered register when setting this_function variable. (patchset #2 id:20001 of https://codereview.chromium.org/1185703002/) Reason for revert: [Sheriff] Makes mjsunit/es6/block-const-assign flaky, e.g.: http://build.chromium.org/p/client.v8/builders/V8%20Linux/builds/4082 Original issue's description: > Fix clobbered register when setting this_function variable. > > R=arv@chromium.org > TEST=mjsunit/regress/regress-crbug-498022 > BUG=chromium:498022 > LOG=N > > Committed: https://crrev.com/bf2bbc8ba508ccd21edf3c08d2e4192c4764ae91 > Cr-Commit-Position: refs/heads/master@{#29020} TBR=arv@chromium.org,rossberg@chromium.org,mstarzinger@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:498022 Review URL: https://codereview.chromium.org/1184093003 Cr-Commit-Position: refs/heads/master@{#29022}
-
mstarzinger authored
R=arv@chromium.org TEST=mjsunit/regress/regress-crbug-498022 BUG=chromium:498022 LOG=N Review URL: https://codereview.chromium.org/1185703002 Cr-Commit-Position: refs/heads/master@{#29020}
-
- 12 Jun, 2015 7 commits
-
-
wingo authored
This is a reapplication of https://codereview.chromium.org/1173333004. R=rossberg@chromium.org LOG=N BUG=498811 Review URL: https://codereview.chromium.org/1178903003 Cr-Commit-Position: refs/heads/master@{#28998}
-
wingo authored
Revert of Add script context with context-allocated "const this" (patchset #2 id:20001 of https://codereview.chromium.org/1173333004/) Reason for revert: nosnap failure Original issue's description: > Add script context with context-allocated "const this" > > This is a reapplication of https://codereview.chromium.org/1179893002/. > > R=rossberg@chromium.org,mstarzinger@chromium.org > LOG=N > BUG=498811 > > Committed: https://crrev.com/cfc764f4050edc74aef92daa4c39ccc113893968 > Cr-Commit-Position: refs/heads/master@{#28994} TBR=mstarzinger@chromium.org,rossberg@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=498811 Review URL: https://codereview.chromium.org/1177903004 Cr-Commit-Position: refs/heads/master@{#28996}
-
wingo authored
This is a reapplication of https://codereview.chromium.org/1179893002/. R=rossberg@chromium.org,mstarzinger@chromium.org LOG=N BUG=498811 Review URL: https://codereview.chromium.org/1173333004 Cr-Commit-Position: refs/heads/master@{#28994}
-
machenbach authored
Revert of Add script context with context-allocated "const this" (patchset #7 id:120001 of https://codereview.chromium.org/1179893002/) Reason for revert: [Sheriff] Breaks gc mole: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gcmole/builds/2435 Original issue's description: > Add script context with context-allocated "const this" > > R=rossberg@chromium.org > LOG=N > BUG=498811 > > Committed: https://crrev.com/fa32d461c16a053cc6d48d3fb326016bc2765765 > Cr-Commit-Position: refs/heads/master@{#28988} TBR=rossberg@chromium.org,mstarzinger@chromium.org,wingo@igalia.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=498811 Review URL: https://codereview.chromium.org/1180043004 Cr-Commit-Position: refs/heads/master@{#28992}
-
yangguo authored
Revert of MIPS64: Enable shorten-64-to-32 warning. (patchset #12 id:240001 of https://codereview.chromium.org/1133163005/) Reason for revert: Compile failure: https://chromegw.corp.google.com/i/client.v8/builders/V8%20Mac64%20-%20debug/builds/3070/steps/compile/logs/stdio Original issue's description: > MIPS64: Enable shorten-64-to-32 warning. > > Port cdc43bc5 > > Original commit message: > Enable clang's shorten-64-to-32 warning flag on ARM64, and fix the warnings > that arise. > > BUG= > > Committed: https://crrev.com/9af578a7c83b58a0ce25345998d9287cbf2030cb > Cr-Commit-Position: refs/heads/master@{#28990} TBR=danno@chromium.org,martyn.capewell@arm.com,paul.lind@imgtec.com,akos.palfi@imgtec.com,dusan.milosavljevic@imgtec.com,jkummerow@chromium.org,machenbach@chromium.org,svenpanne@chromium.org,balazs.kilvady@imgtec.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1182493007 Cr-Commit-Position: refs/heads/master@{#28991}
-
balazs.kilvady authored
Port cdc43bc5 Original commit message: Enable clang's shorten-64-to-32 warning flag on ARM64, and fix the warnings that arise. BUG= Review URL: https://codereview.chromium.org/1133163005 Cr-Commit-Position: refs/heads/master@{#28990}
-
wingo authored
R=rossberg@chromium.org LOG=N BUG=498811 Review URL: https://codereview.chromium.org/1179893002 Cr-Commit-Position: refs/heads/master@{#28988}
-
- 11 Jun, 2015 1 commit
-
-
jarin authored
BUG= R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1175963002 Cr-Commit-Position: refs/heads/master@{#28923}
-
- 10 Jun, 2015 1 commit
-
-
bmeurer authored
Up until now we can only inline based on JSFunction, because of the way the deoptimization works. With this change we will be able to inline based on the SharedFunctionInfo and materialize the JSFunction from a literal or a stack slot when necessary. R=jarin@chromium.org Review URL: https://codereview.chromium.org/1169103004 Cr-Commit-Position: refs/heads/master@{#28906}
-
- 09 Jun, 2015 3 commits
-
-
mbrandy authored
- Introduce Assembler::DataAlign for table alignment in code object - Fix several misuses of r8 (alias of the pool pointer register, pp) - Fix calculation of pp in OSR/handler entry invocation - Enable missing cases in deserializer - Fix references to ool constant pools in comments. R=rmcilroy@chromium.org, michael_dawson@ca.ibm.com BUG=chromium:497180 LOG=N Review URL: https://codereview.chromium.org/1155673005 Cr-Commit-Position: refs/heads/master@{#28873}
-
dusan.milosavljevic authored
Improves code size of generated regexp in TestSizeOfRegExpCode test by 33%. Execution time of the same test improved by ~10%. Utilizing code range for mips64 enable us to use J/JAL instructions for long branches. TEST=cctest/test-heap/TestSizeOfRegExpCode BUG= Review URL: https://codereview.chromium.org/1147503002 Cr-Commit-Position: refs/heads/master@{#28867}
-
dusan.milosavljevic authored
TEST= BUG= Review URL: https://codereview.chromium.org/1170173002 Cr-Commit-Position: refs/heads/master@{#28861}
-
- 08 Jun, 2015 7 commits
-
-
mstarzinger authored
These values were computed by the parser and hence out of sync with any visitor over the AST. Our AST visitor aborts visitation of statement lists as soon as a jump statement has been reached. Now handler tables are guaranteed to be dense and fully populated. R=ishell@chromium.org TEST=mjsunit/regress/regress-crbug-493290 BUG=chromium:493290 LOG=N Review URL: https://codereview.chromium.org/1157213004 Cr-Commit-Position: refs/heads/master@{#28846}
-
dusan.milosavljevic authored
This is required to have sign-extended int32 arithmetic operations by re-landing: https://codereview.chromium.org/1161713003 TEST=cctest/test-api/ArrayBuffer_JSInternalToExternal BUG= Review URL: https://codereview.chromium.org/1153263012 Cr-Commit-Position: refs/heads/master@{#28845}
-
mbrandy authored
We see this error using GCC 4.8.2. R=michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1153213003 Cr-Commit-Position: refs/heads/master@{#28844}
-
conradw authored
Boolean "is_strong" parameters have begun to proliferate across areas where strong mode semantics are different. This CL repurposes the existing ObjectStrength enum as a replacement for them. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1144183004 Cr-Commit-Position: refs/heads/master@{#28839}
-
mvstanton authored
BUG= Review URL: https://codereview.chromium.org/1160173004 Cr-Commit-Position: refs/heads/master@{#28827}
-
jarin authored
This unifies methods Deoptimizer::DoTranslateCommand, Deotpimizer::DoTranslateObject and the arguments object materializer. To unify these, we have to separate reading of the input frame from writing to the output frame because the argument materializer does not write to output frames. Instead, we now deoptimize in following stages: 1. Read out the input frame/registers, decode them using the translations from the deoptimizer and store them in the deoptimizer (Deoptimizer::translated_state_). This is done in TranslatedState::Init. 2. Write out into the output frame buffer all the values that do not require allocation. We also remember references to the values that require materialization. As before, this is done in Deoptimizer::DoCompute*Frame method, but instead calling to DoTranslateCommand, we use the translated frame to obtain the values and write them to the output frames. 3. The platform specific code then sets up the output frames and calls into the deoptimization notification. This has not been changed at all. 4. Once the stack is setup, we handlify all the references in the saved translated values (TranslatedState::Prepare). 5. Finally, we materialize all the values we remembered in step (1) and write them to their frames on the stack (using the TranslatedValue::GetValue method). BUG= Review URL: https://codereview.chromium.org/1136223004 Cr-Commit-Position: refs/heads/master@{#28826}
-
mvstanton authored
BUG= R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/1154303008 Cr-Commit-Position: refs/heads/master@{#28825}
-
- 05 Jun, 2015 1 commit
-
-
dusan.milosavljevic authored
This reverts commit 75744da2. revert reason: octane failures. BUG= Review URL: https://codereview.chromium.org/1160143008 Cr-Commit-Position: refs/heads/master@{#28819}
-
- 04 Jun, 2015 2 commits
-
-
arv authored
Before this we had 3 super related lexical bindings that got injected into method bodies: .home_object, .this_function, and new.target. With this change we get rid of the .home_object one in favor of using .this_function[home_object_symbol] which allows some simplifications throughout the code base. BUG=v8:3768 LOG=N R=adamk@chromium.org, wingo@igalia.com Review URL: https://codereview.chromium.org/1154103005 Cr-Commit-Position: refs/heads/master@{#28802}
-
mbrandy authored
Embed constant pools within their corresponding Code objects. This removes support for out-of-line constant pools in favor of the new approach -- the main advantage being that it eliminates the need to allocate and manage separate constant pool array objects. Currently supported on PPC and ARM. Enabled by default on PPC only. This yields a 6% improvment in Octane on PPC64. R=bmeurer@chromium.org, rmcilroy@chromium.org, michael_dawson@ca.ibm.com BUG=chromium:478811 LOG=Y Review URL: https://codereview.chromium.org/1162993006 Cr-Commit-Position: refs/heads/master@{#28801}
-
- 03 Jun, 2015 4 commits
-
-
balazs.kilvady authored
Port 4b8051a0 Original commit message: This splits the SuperReference AST node into SuperPropertyReference and SuperCallReference. The super call reference node consists of three unresolved vars to this, new.target and this_function. These gets declared when the right function is entered and if it is in use. The variables gets assigned in FullCodeGenerator::Generate. This is a revert of the revert 88b1c917 BUG=v8:3768 LOG=N Review URL: https://codereview.chromium.org/1160973008 Cr-Commit-Position: refs/heads/master@{#28795}
-
mstarzinger authored
This fixes a corner-case where arrow functions that require a context allocate none, because there are no additional slots allocated. Note that this didn't happen with true function scopes because they always had at least the receiver slot. The outcome was a context chain that no longer was in sync with the scope chain, hence context slot loads were bogus. This is observable using the DYNAMIC_LOCAL optimization in all compilers. R=rossberg@chromium.org,wingo@igalia.com TEST=mjsunit/harmony/regress/regress-4160 BUG=v8:4160 LOG=N Review URL: https://codereview.chromium.org/1146063006 Cr-Commit-Position: refs/heads/master@{#28788}
-
bmeurer authored
Previously the %_DateField intrinsic would also check the object and throw an exception if you happen to pass something that is not a valid JSDate, which (a) violates our policy for instrinsics and (b) is hard to optimize in TurboFan (even Crankshaft has a hard time, but there we will never inline the relevant builtins, so it doesn't show up). The throwing part is now a separate intrinsics %_ThrowIfNotADate that throws an exception in full codegen and deoptimizes in Crankshaft, which means the code for the current use cases is roughly the same (modulo some register renamings/gap moves). R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/1167813003 Cr-Commit-Position: refs/heads/master@{#28782}
-
bmeurer authored
Revert of Embedded constant pools. (patchset #12 id:220001 of https://codereview.chromium.org/1131783003/) Reason for revert: Breaks Linux nosnap cctest/test-api/FastReturnValuesWithProfiler, see http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug%20-%202/builds/609/steps/Check/logs/FastReturnValuesWithP.. Original issue's description: > Add support for Embedded Constant Pools for PPC and Arm > > Embed constant pools within their corresponding Code > objects. > > This removes support for out-of-line constant pools in favor > of the new approach -- the main advantage being that it > eliminates the need to allocate and manage separate constant > pool array objects. > > Currently supported on PPC and ARM. Enabled by default on > PPC only. > > This yields a 6% improvment in Octane on PPC64. > > R=danno@chromium.org, svenpanne@chromium.org, bmeurer@chromium.org, rmcilroy@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com > BUG=chromium:478811 > LOG=Y > > Committed: https://crrev.com/a9404029343d65f146e3443f5280c40a97e736af > Cr-Commit-Position: refs/heads/master@{#28770} TBR=rmcilroy@chromium.org,ishell@chromium.org,rodolph.perfetta@arm.com,mbrandy@us.ibm.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:478811 Review URL: https://codereview.chromium.org/1155703006 Cr-Commit-Position: refs/heads/master@{#28772}
-
- 02 Jun, 2015 4 commits
-
-
mbrandy authored
Embed constant pools within their corresponding Code objects. This removes support for out-of-line constant pools in favor of the new approach -- the main advantage being that it eliminates the need to allocate and manage separate constant pool array objects. Currently supported on PPC and ARM. Enabled by default on PPC only. This yields a 6% improvment in Octane on PPC64. R=danno@chromium.org, svenpanne@chromium.org, bmeurer@chromium.org, rmcilroy@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com BUG=chromium:478811 LOG=Y Review URL: https://codereview.chromium.org/1131783003 Cr-Commit-Position: refs/heads/master@{#28770}
-
arv authored
This splits the SuperReference AST node into SuperPropertyReference and SuperCallReference. The super call reference node consists of three unresolved vars to this, new.target and this_function. These gets declared when the right function is entered and if it is in use. The variables gets assigned in FullCodeGenerator::Generate. This is a revert of the revert 88b1c917 BUG=v8:3768 LOG=N R=wingo@igalia.com, adamk@chromium.org Review URL: https://codereview.chromium.org/1168513004 Cr-Commit-Position: refs/heads/master@{#28769}
-
conradw authored
Copied, with permission, from https://codereview.chromium.org/1151853003/ Initial patch set is an unmodified copy, rebased on top of related fixes from https://codereview.chromium.org/1158933002/ Subsequent patch sets contain fixes for remaining bugs in the CL. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1152093003 Cr-Commit-Position: refs/heads/master@{#28760}
-
mvstanton authored
It's necessary to do this in order to know how many type feedback vector slots we should allocate for the object literal. BUG= Review URL: https://codereview.chromium.org/1165463007 Cr-Commit-Position: refs/heads/master@{#28749}
-
- 01 Jun, 2015 3 commits
-
-
erikcorry authored
When compiling on a laptop I like to concatenate the small test files. This makes a big difference to compile times. These changes make that easier. R=ulan@chromium.org BUG= Review URL: https://codereview.chromium.org/1163803002 Cr-Commit-Position: refs/heads/master@{#28742}
-
arv authored
Revert of [es6] Super call in arrows and eval (patchset #5 id:100001 of https://codereview.chromium.org/1146863007/) Reason for revert: Fails http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug%20-%201/builds/579/steps/Check/logs/super Original issue's description: > [es6] Super call in arrows and eval > > This splits the SuperReference AST node into SuperPropertyReference and > SuperCallReference. The super call reference node consists of three > unresolved vars to this, new.target and this_function. These gets > declared when the right function is entered and if it is in use. The > variables gets assigned in FullCodeGenerator::Generate. > > BUG=v8:3768 > LOG=N > R=wingo@igalia.com, adamk@chromium.org > > Committed: https://crrev.com/673c0516ab96f24343bbb26e0afc2846b5a679df > Cr-Commit-Position: refs/heads/master@{#28731} TBR=wingo@igalia.com,adamk@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3768 Review URL: https://codereview.chromium.org/1161243005 Cr-Commit-Position: refs/heads/master@{#28735}
-
arv authored
This splits the SuperReference AST node into SuperPropertyReference and SuperCallReference. The super call reference node consists of three unresolved vars to this, new.target and this_function. These gets declared when the right function is entered and if it is in use. The variables gets assigned in FullCodeGenerator::Generate. BUG=v8:3768 LOG=N R=wingo@igalia.com, adamk@chromium.org Review URL: https://codereview.chromium.org/1146863007 Cr-Commit-Position: refs/heads/master@{#28731}
-