- 09 Nov, 2015 7 commits
-
-
bmeurer authored
Introduce Reducer::Finalize, which get's called by the GraphReducer once all reductions are done, and use this to implement full inlining as part of the regular reducer fixpoint. R=jarin@chromium.org BUG=v8:4493 LOG=n Review URL: https://codereview.chromium.org/1419373012 Cr-Commit-Position: refs/heads/master@{#31875}
-
jacob.bramley authored
BUG= Review URL: https://codereview.chromium.org/1414283009 Cr-Commit-Position: refs/heads/master@{#31874}
-
bmeurer authored
The %StringCharFromCode and %CharFromCode runtime function perform exactly the same task, so we need only one of them. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1417743007 Cr-Commit-Position: refs/heads/master@{#31873}
-
yangguo authored
R=bmeurer@chromium.org BUG=v8:4536 LOG=N Review URL: https://codereview.chromium.org/1427743008 Cr-Commit-Position: refs/heads/master@{#31872}
-
bmeurer authored
Introduce receiver conversion mode specialization for the Call and CallFunction builtins, so we can specialize the builtin functionality (actually an optimization only) based on static information from the callsite (this is basically a superset of the optimizations that were available with the CallFunctionStub and CallICStub, except that these optimizations are correct now). This fixes a regression introduced by the removal of CallFunctionStub, for programs that call a lot. R=yangguo@chromium.org BUG=chromium:552244 LOG=n Review URL: https://codereview.chromium.org/1436493002 Cr-Commit-Position: refs/heads/master@{#31871}
-
jarin authored
Review URL: https://codereview.chromium.org/1425143008 Cr-Commit-Position: refs/heads/master@{#31870}
-
mtrofin authored
While working on frame elision, I wanted to disassemble codegen in the debugger, as the code generation is progressing. I discovered we had a "Print" member on the x64 assembler, without any implementation. I pulled it up to AssemblerBase and gave it an implementation that should work for the other architectures. Also checked that ia32, x87, arm and arm64 assemblers didn't have such an implementation - free Print. Arm64 has a naming conflict with the v8::internal::Disassembler. I renamed the arm64 type with a more specific name. Opportunistically fixed a bug in the name converter. This debug-time printer doesn't provide a Code object, which should be OK with the name converters, by the looks of other APIs there. All this means is that when using the Print() API, we just get addresses dumped without any context (like what this address may be - a stub maybe, etc). This seems fine for the scenario. There may be other places that assume a Code object. Since this is a diagnostics-only scenario, for codegen developers, I feel it is reasonable to fix such other places as we find them. Review URL: https://codereview.chromium.org/1431933003 Cr-Commit-Position: refs/heads/master@{#31869}
-
- 08 Nov, 2015 1 commit
-
-
https://codereview.chromium.org/1422793004/pkotwicz authored
BUG=chromium:547162 LOG=Y Review URL: https://codereview.chromium.org/1412933009 Cr-Commit-Position: refs/heads/master@{#31868}
-
- 07 Nov, 2015 2 commits
-
-
ishell authored
JSRegExp's properties backing stores must not be shared. BUG=chromium:548580 LOG=N Review URL: https://codereview.chromium.org/1429743006 Cr-Commit-Position: refs/heads/master@{#31867}
-
martyn.capewell authored
Use compare-negate instruction if the right-hand input to a compare is a negate operation. BUG= Review URL: https://codereview.chromium.org/1410123009 Cr-Commit-Position: refs/heads/master@{#31866}
-
- 06 Nov, 2015 18 commits
-
-
rmcilroy authored
IC::GetSharedFunctionInfo get's the JS frame which called the IC. When the function is running in the interpreter, there is a Bytecode handler stub frame between the IC and the JS frame. Modify IC::GetSharedFunctionInfo to handle this. BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1420283020 Cr-Commit-Position: refs/heads/master@{#31865}
-
rmcilroy authored
Adds a blacklist of tests which are currently unsupported or broken in Ignition to the mjsunit and test262 test status. Also removes --ignition-script-filter flag, and adds a --ignition_fallback_on_eval_and_catch flag which fallsback to fullcodegen for functions which call eval or contain a catch block. BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1420963009 Cr-Commit-Position: refs/heads/master@{#31864}
-
adamk authored
This allows testing the configuration where --harmony-default-parameters is passed without --harmony-destructuring. R=rossberg@chromium.org BUG=v8:2160 LOG=n Review URL: https://codereview.chromium.org/1410023015 Cr-Commit-Position: refs/heads/master@{#31863}
-
rmcilroy authored
BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1419273008 Cr-Commit-Position: refs/heads/master@{#31862}
-
yangguo authored
R=ulan@chromium.org Review URL: https://codereview.chromium.org/1408003012 Cr-Commit-Position: refs/heads/master@{#31861}
-
mstarzinger authored
Now that the VisitCode visitor is actually marking through to inlined code objects (as opposed to the VisitJSFunction visitor), we can make this helper method private again. R=ulan@chromium.org Review URL: https://codereview.chromium.org/1422853008 Cr-Commit-Position: refs/heads/master@{#31860}
-
rmcilroy authored
BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1406253008 Cr-Commit-Position: refs/heads/master@{#31859}
-
ahaas authored
R=titzer@chromium.org Review URL: https://codereview.chromium.org/1413463009 Cr-Commit-Position: refs/heads/master@{#31858}
-
mstarzinger authored
This fixes a corner case where optimized code could still be reachable through the optimized code map, even though unoptimized code for any inlined function might have long been flushed. R=ulan@chromium.org TEST=cctest/test-heap/Regress513496 BUG=chromium:513496 LOG=n Review URL: https://codereview.chromium.org/1415683011 Cr-Commit-Position: refs/heads/master@{#31857}
-
bmeurer authored
We forgot to add the number of arguments parameter in JSFrameSpecialization, which was added before the context. R=jarin@chromium.org BUG=chromium:552304 LOG=n Review URL: https://codereview.chromium.org/1429233004 Cr-Commit-Position: refs/heads/master@{#31856}
-
hablich authored
Revert of [turbofan] Enable general purpose inlining. (patchset #2 id:20001 of https://codereview.chromium.org/1416873007/ ) Reason for revert: As discussed with Benedikt: Disable --turbo-inlining again because it tanks Jetstream. Original issue's description: > [turbofan] Enable general purpose inlining. > > R=bmeurer@chromium.org,hablich@chromium.org > BUG=v8:4493 > LOG=n > > Committed: https://crrev.com/161a0462fb0e79f155f3ea085ba774dad99539cb > Cr-Commit-Position: refs/heads/master@{#31634} TBR=bmeurer@chromium.org,mstarzinger@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4493 Review URL: https://codereview.chromium.org/1409153008 Cr-Commit-Position: refs/heads/master@{#31855}
-
rmcilroy authored
Adds a test that the receiver for sloppy mode functions is replaced with the global proxy when called with an undefined receiever. BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1410113008 Cr-Commit-Position: refs/heads/master@{#31854}
-
ulan authored
if that is responsible for memory regression in UMA. Related CLs: crrev.com/1420363004, crrev.com/1423453003 TBR=hpayer@chromium.org BUG=chromium:552305 LOG=NO Review URL: https://codereview.chromium.org/1420283021 Cr-Commit-Position: refs/heads/master@{#31853}
-
mstarzinger authored
This avoids the need to clear optimized code maps within the GC by just preventing entries being added in the first place, whenever a snapshot is being constructed. The main goal here is to simplify the logic in the already complex visitor for our shared function info objects. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1411513005 Cr-Commit-Position: refs/heads/master@{#31852}
-
hablich authored
This will be used as a data source for an UMA histogram. LOG=N BUG=chromium:546603 R=jochen@chromium.org,yangguo@chromium.org Review URL: https://codereview.chromium.org/1413503007 Cr-Commit-Position: refs/heads/master@{#31851}
-
ahaas authored
This change does not change how the BufferedRawMachineAssemblerTester is used in tests, but it makes its construction in other constructors (e.g. in the WasmRunner) cleaner. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1414203009 Cr-Commit-Position: refs/heads/master@{#31850}
-
zhengxing.li authored
port 4ab1b05d (r31826). original commit message: Depends on https://codereview.chromium.org/1407373007/ After that CL, all receiver conversion is handled by the call builtin. BUG= Review URL: https://codereview.chromium.org/1419563006 Cr-Commit-Position: refs/heads/master@{#31849}
-
zhengxing.li authored
port 44c44521 (r31823). original commit message: This fixes receiver conversion since the Call builtin does it correctly. BUG= Review URL: https://codereview.chromium.org/1416673009 Cr-Commit-Position: refs/heads/master@{#31848}
-
- 05 Nov, 2015 12 commits
-
-
paul.lind authored
Use 64-bit load of receiver in 4ab1b05d. BUG= Review URL: https://codereview.chromium.org/1412693003 Cr-Commit-Position: refs/heads/master@{#31847}
-
adamk authored
It was originally shipped in https://crrev.com/eef2b9b09723ba1dae3ec0172341e93e9030ada0, but was reverted due to poor interaction with Blink. That interaction seems to be fixed thanks to changes to the V8 API and to @@toStringTag handling on access-checked objects. BUG=v8:3502 LOG=y CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.v8:v8_linux_nosnap_rel;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1406293011 Cr-Commit-Position: refs/heads/master@{#31846}
-
akos.palfi authored
On MIPS arch, all memory accesses (including halfword) must be aligned to their native size or an alignment exception occurs. The kernel will fix this up, but with performance penalty. TEST=test-bytecode-generator/CallRuntime BUG= Review URL: https://codereview.chromium.org/1423373004 Cr-Commit-Position: refs/heads/master@{#31845}
-
adamk authored
Since enabling destructuring already implies enabling default parameters, there's not a good way to separate these two. Luckily, they're both feature-complete (save for destructuring assignment). This causes us to pass an additional 24 test262 tests. BUG=v8:811, v8:2160 LOG=y Review URL: https://codereview.chromium.org/1407393009 Cr-Commit-Position: refs/heads/master@{#31844}
-
adamk authored
The previous code had a mix of breaks, early returns, and switch/case/if with fallthrough. Now the pattern is to either return for known errors or break to the bottom of the switch for unhandled tokens. Also cleaned up random other stuff in the function: removed unnecessary local vars, shortened position-fetching calls. Review URL: https://codereview.chromium.org/1412313009 Cr-Commit-Position: refs/heads/master@{#31843}
-
adamk authored
http://crrev.com/80a1e004f4ef619b54a2d87bf2108719a8411860 was reverted due to a Blink test failure. That test has been marked as failing on the Blink side in https://chromium.googlesource.com/chromium/src/+/ac11c6df133. BUG=v8:811 LOG=y TBR=rossberg@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1409093005 Cr-Commit-Position: refs/heads/master@{#31842}
-
littledan authored
This patch adds UseCounters for the various language modes. This may be useful for helping us to prioritize future optimization and language design decisions. R=adamk CC=seththompson BUG=none Review URL: https://codereview.chromium.org/1429173002 Cr-Commit-Position: refs/heads/master@{#31841}
-
machenbach authored
Revert of Revert "Revert of [es6] Implement destructuring binding in try/catch" (patchset #2 id:20001 of https://codereview.chromium.org/1411323008/ ) Reason for revert: [Sheriff] Breaks a layout test: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/2750 Please request rebase upstream first if intended. Original issue's description: > Revert "Revert of [es6] Implement destructuring binding in try/catch" > > Reland try/catch destructuring with a fix for the MemorySanitizer failure: > initialization_pos needs to be initialized in the DeclarationDescriptor. > > This is a one line fix to http://crrev.com/a316db995e6e4253664920652ed4e5a38b2caeba > > BUG=v8:811 > LOG=y > > Committed: https://crrev.com/80a1e004f4ef619b54a2d87bf2108719a8411860 > Cr-Commit-Position: refs/heads/master@{#31834} TBR=littledan@chromium.org,rossberg@chromium.org,adamk@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:811 Review URL: https://codereview.chromium.org/1421193006 Cr-Commit-Position: refs/heads/master@{#31840}
-
cbruni authored
LOG=N BUG=v8:4428 Review URL: https://codereview.chromium.org/1425293007 Cr-Commit-Position: refs/heads/master@{#31839}
-
yangguo authored
R=bmeurer@chromium.org Committed: https://crrev.com/5a1e42c039ac3379ebe1e7e34fb8163e1ec1493e Cr-Commit-Position: refs/heads/master@{#31791} Committed: https://crrev.com/bf5c9af92ac0a5b7f020ac968d3d42ed06aa6144 Cr-Commit-Position: refs/heads/master@{#31805} Review URL: https://codereview.chromium.org/1428203003 Cr-Commit-Position: refs/heads/master@{#31838}
-
mstarzinger authored
Revert of [heap] Separate out optimized code map processing. (patchset #2 id:20001 of https://codereview.chromium.org/1421903012/ ) Reason for revert: Causes GC-Stress failures. Original issue's description: > [heap] Separate out optimized code map processing. > > This separates the post-processing step for optimized code maps out of > the CodeFlusher. It uses the complete SharedFunctionInfo::Iterator to > visit all candidates instead of gathering candidates during marking. > > Gathering candidates during marking no longer makes sense, now that the > majority of SharedFunctionInfo objects will hold such an optimized code > map. Also it reduces complexity of the implementation. Also conflating > this mechanism with "code flushing" was confusing. > > This reverts commit b6644e84. > > R=ulan@chromium.org > > Committed: https://crrev.com/bb7a5eb2d89bae25f2b5ecb9515669f0ac73c111 > Cr-Commit-Position: refs/heads/master@{#31836} TBR=ulan@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1412063012 Cr-Commit-Position: refs/heads/master@{#31837}
-
mstarzinger authored
This separates the post-processing step for optimized code maps out of the CodeFlusher. It uses the complete SharedFunctionInfo::Iterator to visit all candidates instead of gathering candidates during marking. Gathering candidates during marking no longer makes sense, now that the majority of SharedFunctionInfo objects will hold such an optimized code map. Also it reduces complexity of the implementation. Also conflating this mechanism with "code flushing" was confusing. This reverts commit b6644e84. R=ulan@chromium.org Review URL: https://codereview.chromium.org/1421903012 Cr-Commit-Position: refs/heads/master@{#31836}
-