- 11 Apr, 2017 28 commits
-
-
mathias authored
The spec proposal has been updated to drop contributory binary properties such as `Other_ID_Start` and `Other_ID_Continue`. This patch reverts commit 26e5d012 and adds tests to ensure these properties are not supported. R= BUG=v8:4743 Review-Url: https://codereview.chromium.org/2809143003 Cr-Commit-Position: refs/heads/master@{#44569}
-
Ross McIlroy authored
Move dead bytecode elimination from a seperate bytecode pipeline optimizer into the BytecodeArrayWriter. This removes the last bytecode pipeline optimizer, which means we can remove the Bytecode pipeline which, which should increase compile speed. BUG=v8:6194 Change-Id: I47fb3c3463b2b8a92e02cf7a6b608683fcfa5261 Reviewed-on: https://chromium-review.googlesource.com/471407 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#44568}
-
Michael Achenbach authored
Bug: chromium:677032 NOTRY=true Change-Id: I820e9c89677f4028107719547c372f91e5feb271 Reviewed-on: https://chromium-review.googlesource.com/474805 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#44567}
-
Michael Achenbach authored
Bug: chromium:705962 NOTRY=true Change-Id: I734df88af104a9e9800600fee7f41cee5a128450 Reviewed-on: https://chromium-review.googlesource.com/474031Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#44566}
-
machenbach authored
Revert of [date] Add ICU backend for timezone info behind a flag (patchset #17 id:320001 of https://codereview.chromium.org/2724373002/ ) Reason for revert: Breaks noi18n: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20noi18n%20-%20debug/builds/13314 Original issue's description: > [date] Add ICU backend for timezone info behind a flag > > This patch implements a timezone backend which is based on ICU, rather > than operating system calls. It can be turned on by passing the > --icu-timezone-data flag. The goal here is to take advantage of ICU's > data, which is more complete than the data that some system calls expose. > For example, without any special code, this patch fixes the time zone > of Lord Howe Island to have a correct 30 minute DST offset, rather than > 60 minutes as the OS backends assume it to have. > > Unfortunately, the parenthized timezone name in Date.prototype.toString() > differs across platforms. This patch chooses the long timezone name, > which matches Windows behavior and might be the most intelligible, but > the web compatibility impact is unclear. > > BUG=v8:6031,v8:2137,v8:6076 > > Review-Url: https://codereview.chromium.org/2724373002 > Cr-Commit-Position: refs/heads/master@{#44562} > Committed: https://chromium.googlesource.com/v8/v8/+/b213f2399038a615cdfbfa0201cddc113d304018 TBR=ulan@chromium.org,jshin@chromium.org,jgruber@chromium.org,littledan@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:6031,v8:2137,v8:6076 Review-Url: https://codereview.chromium.org/2811103002 Cr-Commit-Position: refs/heads/master@{#44565}
-
Ross McIlroy authored
All the optimizations have now been moved to either the BytecodeGenerator or the BytecodeArrayWriter/Builder. BUG=v8:6194 Change-Id: Ie5c5d55e824c94ffb503af376c72bc64ad1f6f81 Reviewed-on: https://chromium-review.googlesource.com/469349 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#44564}
-
Michael Starzinger authored
This fixes {JSCreateLowering} to traverse boilerplate objects in the same order the runtime uses (i.e. properties first, elements second). That order is hard-coded in the nesting of {AllocationSite} objects. R=bmeurer@chromium.org TEST=mjsunit/regress/regress-crbug-709537 BUG=chromium:709537 Change-Id: I8f446a0880448ea88a3e242e92d11d611581a42b Reviewed-on: https://chromium-review.googlesource.com/474028Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#44563}
-
littledan authored
This patch implements a timezone backend which is based on ICU, rather than operating system calls. It can be turned on by passing the --icu-timezone-data flag. The goal here is to take advantage of ICU's data, which is more complete than the data that some system calls expose. For example, without any special code, this patch fixes the time zone of Lord Howe Island to have a correct 30 minute DST offset, rather than 60 minutes as the OS backends assume it to have. Unfortunately, the parenthized timezone name in Date.prototype.toString() differs across platforms. This patch chooses the long timezone name, which matches Windows behavior and might be the most intelligible, but the web compatibility impact is unclear. BUG=v8:6031,v8:2137,v8:6076 Review-Url: https://codereview.chromium.org/2724373002 Cr-Commit-Position: refs/heads/master@{#44562}
-
jarin authored
Review-Url: https://codereview.chromium.org/2811953003 Cr-Commit-Position: refs/heads/master@{#44561}
-
Ross McIlroy authored
Moves the logic for eliding non-effectful accumulator load elision from the peephole optimizer to the BytecodeArrayWriter. BUG=v8:6194 Change-Id: I05fbe4ee8ac340e5c355285d0b47e4a9d52fd0a8 Reviewed-on: https://chromium-review.googlesource.com/469828 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#44560}
-
dusan.simicic authored
Add support for I32x4Mul, I32x4MaxS, I32x4MinS, I32x4Eq, I32x4Ne, I32x4Shl, I32x4ShrS, I32x4ShrU, I32x4MaxU, I32x4MinU, S32x4Select operations for mips32 and mips64 architectures BUG= Review-Url: https://codereview.chromium.org/2780713003 Cr-Commit-Position: refs/heads/master@{#44559}
-
tebbi authored
R=danno@chromium.org Review-Url: https://codereview.chromium.org/2796343002 Cr-Commit-Position: refs/heads/master@{#44558}
-
Loo Rong Jie authored
Bug: v8:4742 Change-Id: I6f9583cd25c4a8b038e665ea18a20abf29d8b376 Reviewed-on: https://chromium-review.googlesource.com/471107Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Loo Rong Jie <loorongjie@gmail.com> Cr-Commit-Position: refs/heads/master@{#44557}
-
jgruber authored
IsNumber returns true for Smi/HeapNumber arguments. IsNumberNormalized expects a number argument and returns true if it is either a Smi, or a HeapNumber with a value outside the Smi range. BUG= Review-Url: https://codereview.chromium.org/2813623003 Cr-Commit-Position: refs/heads/master@{#44556}
-
Camillo Bruni authored
Enable separatio of ic, bytecode, builtin and stub entries through: --separate-ic=true --separate-bytecodes=true --separate-builtins=true --separate-stubs=true Change-Id: I6da4be7add093bb54abe956c60cd186e735ed9b5 Reviewed-on: https://chromium-review.googlesource.com/473046 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#44555}
-
Michael Starzinger authored
R=clemensh@chromium.org TEST=mjsunit/asm/call-collisions BUG=v8:6202 Change-Id: Ie382ed011defb0146c07336b1fd65532ecc20e2e Reviewed-on: https://chromium-review.googlesource.com/473146Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#44554}
-
jgruber authored
* Use BIND, VARIABLE macros everywhere. * Unify fast path check functions. * Asserts in CSA::StringCharCodeAt. BUG= Review-Url: https://codereview.chromium.org/2811063003 Cr-Commit-Position: refs/heads/master@{#44553}
-
Michael Achenbach authored
Bug: chromium:709420 TBR=marja@chromium.org Change-Id: I71cf02137bcc7d8e163162c6dc1be6b906422281 Reviewed-on: https://chromium-review.googlesource.com/474747Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#44552}
-
gsathya authored
This patch implements the runtime semantics of dynamic import. We create a new ASTNode so that we can pass the JSFunction closure() to the runtime function from which we get the script_url. d8 implements the embedder logic required to load and evaluate the modules. The API is mostly implemented as specified. BUG=8:5785 Review-Url: https://codereview.chromium.org/2703563002 Cr-Commit-Position: refs/heads/master@{#44551}
-
Clemens Hammacher authored
According to the spec, section names must be valid UTF-8. This CL adds a check for that. Imported and exported names were already checked before. In order to use the {consume_string} function from the WasmSectionIterator, it moved it out of the ModuleDecoder into the anonymous namespace. It now also gets a name for the string to be parsed, for better error messages. R=rossberg@chromium.org Change-Id: I20b1ddb0bd1c7ada237d8303951073310fe1c714 Reviewed-on: https://chromium-review.googlesource.com/470207 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Rossberg <rossberg@chromium.org> Cr-Commit-Position: refs/heads/master@{#44550}
-
yangguo authored
Other_ID_Start and Other_ID_Continue are not supported by ICU, so for now we implement these manually as special binary property classes. R=jgruber@chromium.org BUG=v8:4743 Review-Url: https://codereview.chromium.org/2808803002 Cr-Commit-Position: refs/heads/master@{#44549}
-
Michael Achenbach authored
This reverts commit 751e8935. Reason for revert: Breaks layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/14885 See: https://github.com/v8/v8/wiki/Blink-layout-tests Original change's description: > [ignition] Add call bytecodes for undefined receiver > > Adds a collection of call bytecodes which have an implicit undefined > receiver argument, for cases such as global calls where we know that the > receiver has to be undefined. This way we can skip an LdaUndefined, > decrease bytecode register pressure, and set a more accurate > ConvertReceiverMode on the interpreter and TurboFan call. > > As a side effect, the "normal" Call bytecode now becomes a rare case > (only with calls and super property calls), so we get rid of its 0-2 > argument special cases and modify CallProperty[N] to use the > NotNullOrUndefined ConvertReceiverMode. > > Change-Id: I9374a32fefd66fc0251b5193bae7a6b7dc31eefc > Reviewed-on: https://chromium-review.googlesource.com/463287 > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#44530} TBR=rmcilroy@chromium.org,mstarzinger@chromium.org,leszeks@chromium.org,v8-reviews@googlegroups.com,v8-mips-ports@googlegroups.com,v8-ppc-ports@googlegroups.com,v8-x87-ports@googlegroups.com,bmeurer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I7629dec609d0ec938ce7105d6c1c74884e5f9272 Reviewed-on: https://chromium-review.googlesource.com/474744 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#44548}
-
Michael Achenbach authored
This reverts commit a79f9031. Reason for revert: Need to revert: https://chromium-review.googlesource.com/c/463287/ Original change's description: > [Interpreter] Unify approach to building interpreter handler and Turbofan stubs. > > Moves interpreter-generator.cc to a similar model of building handlers as > Turbofan stubs elsewhere, to simplify moving code between stubs / builtins and > bytecode handlers. This removes the "__" hack from the Interpreter generator > code. > > Also make SetBytecodeOffset private to InterpreterAssembler and make > LdaImmutable[Current]ContextSlot and Lda[Current]ContextSlot share > handlers since they are identical. > > Change-Id: I9e91e7d37c2ea75513e4dcc3b95b4bb6517f83da > Reviewed-on: https://chromium-review.googlesource.com/471987 > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#44534} TBR=rmcilroy@chromium.org,jkummerow@chromium.org,leszeks@chromium.org,ishell@chromium.org,cbruni@chromium.org,v8-reviews@googlegroups.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I5c72a8a20ab6b8fd862427e1703c883fa484a2c1 Reviewed-on: https://chromium-review.googlesource.com/474745Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#44547}
-
machenbach authored
Revert of PPC/s390: [ignition] Add call bytecodes for undefined receiver (patchset #1 id:1 of https://codereview.chromium.org/2809743003/ ) Reason for revert: Need to revert: https://chromium-review.googlesource.com/c/463287/ Original issue's description: > PPC/s390: [ignition] Add call bytecodes for undefined receiver > > Port 751e8935 > > Original Commit Message: > > Adds a collection of call bytecodes which have an implicit undefined > receiver argument, for cases such as global calls where we know that the > receiver has to be undefined. This way we can skip an LdaUndefined, > decrease bytecode register pressure, and set a more accurate > ConvertReceiverMode on the interpreter and TurboFan call. > > As a side effect, the "normal" Call bytecode now becomes a rare case > (only with calls and super property calls), so we get rid of its 0-2 > argument special cases and modify CallProperty[N] to use the > NotNullOrUndefined ConvertReceiverMode. > > R=leszeks@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com > BUG= > LOG=N > > Review-Url: https://codereview.chromium.org/2809743003 > Cr-Commit-Position: refs/heads/master@{#44539} > Committed: https://chromium.googlesource.com/v8/v8/+/41b228057f89e73fbaae867177d523e60d4e92bc TBR=joransiu@ca.ibm.com,jyan@ca.ibm.com,leszeks@chromium.org,michael_dawson@ca.ibm.com,bjaideep@ca.ibm.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review-Url: https://codereview.chromium.org/2809093002 Cr-Commit-Position: refs/heads/master@{#44546}
-
yangguo authored
Before serializing an external string for a native source, we replace its resource field with the type and index of the native source. Upon deserialization, we restore the resource. This change also removes the native source caches with a more straight- forward mechanism to find the resource type and index. R=ulan@chromium.org Review-Url: https://codereview.chromium.org/2807023003 Cr-Commit-Position: refs/heads/master@{#44545}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/6c97eff..94c06fe Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/87e8335..9a55aba Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/e9f3127..49df471 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Change-Id: Ie59326de4a9c959e88e604968b6133e9d4677cb8 Reviewed-on: https://chromium-review.googlesource.com/473869Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#44544}
-
Caitlin Potter authored
Fix error message printed by Runtime_ThrowCalledNonCallable. As noted on the bug, this has a slight problem in that it will always print that "asyncIterator" was not callable for GetIterator with an async IteratorType, though it may be referring to a different call. This issue is present regardless of the change I introduced to perform this desugaring in the BytecodeGenerator. BUG=v8:6187 R=adamk@chromium.org, verwaest@chromium.org Change-Id: I2077b7cd5976d9d9ba044f0dff44ee8c312d1263 Reviewed-on: https://chromium-review.googlesource.com/470806Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Caitlin Potter <caitp@igalia.com> Cr-Commit-Position: refs/heads/master@{#44543}
-
aseemgarg authored
BUG=v8:4614 R=binji@chromium.org,jarin@chromium.org Review-Url: https://codereview.chromium.org/2799863002 Cr-Commit-Position: refs/heads/master@{#44542}
-
- 10 Apr, 2017 12 commits
-
-
bbudge authored
- Adds WASM opcodes I32x4SConvertI16x8Low, I32x4SConvertI16x8High, I32x4UConvertI16x8Low, I32x4UConvertI16x8High, which unpack half of an I16x8 register into a whole I32x4 register, with signed or unsigned extension. Having separate Low/High opcodes works around the difficulty of having multiple output registers, which would be necessary if we unpacked the entire I16x8 register. - Adds WASM opcodes I16x8SConvertI8x16Low, I16x8SConvertI8x16High, I16x8UConvertI8x16Low, I16x8UConvertI8x16High, similarly to above. - Adds WASM opcodes I16x8SConvertI32x4, I16x8UConvertI32x4, I8x16SConvert16x8, I8x16UConvertI16x8, which pack two source registers into a single destination register with signed or unsigned saturation. These could have been separated into half operations, but this is simpler to implement with SSE, AVX, and is acceptable on ARM. It also avoids adding operations that only modify half of their destination register. - Implements these opcodes for ARM. LOG=N BUG=v8:6020 Review-Url: https://codereview.chromium.org/2800523002 Cr-Commit-Position: refs/heads/master@{#44541}
-
bbudge authored
LOG=N BUG=v8:6020 Review-Url: https://codereview.chromium.org/2797923006 Cr-Original-Commit-Position: refs/heads/master@{#44536} Committed: https://chromium.googlesource.com/v8/v8/+/6588187ae3acaa5b40762c539ee9fe355551bea3 Review-Url: https://codereview.chromium.org/2797923006 Cr-Commit-Position: refs/heads/master@{#44540}
-
bjaideep authored
Port 751e8935 Original Commit Message: Adds a collection of call bytecodes which have an implicit undefined receiver argument, for cases such as global calls where we know that the receiver has to be undefined. This way we can skip an LdaUndefined, decrease bytecode register pressure, and set a more accurate ConvertReceiverMode on the interpreter and TurboFan call. As a side effect, the "normal" Call bytecode now becomes a rare case (only with calls and super property calls), so we get rid of its 0-2 argument special cases and modify CallProperty[N] to use the NotNullOrUndefined ConvertReceiverMode. R=leszeks@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Review-Url: https://codereview.chromium.org/2809743003 Cr-Commit-Position: refs/heads/master@{#44539}
-
Ali Ijaz Sheikh authored
BUG= Change-Id: I55e41786f3d249ed545c359589894f39b2d89284 Reviewed-on: https://chromium-review.googlesource.com/437385 Commit-Queue: Ali Ijaz Sheikh <ofrobots@google.com> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#44538}
-
bbudge authored
Revert of [ARM] Implement D-register versions of vzip, vuzp, and vtrn. (patchset #4 id:60001 of https://codereview.chromium.org/2797923006/ ) Reason for revert: Breaks: http://builders/V8%20Arm%20-%20debug/builds/2751 Original issue's description: > [ARM] Implement D-register versions of vzip, vuzp, and vtrn. > > LOG=N > BUG=v8:6020 > > Review-Url: https://codereview.chromium.org/2797923006 > Cr-Commit-Position: refs/heads/master@{#44536} > Committed: https://chromium.googlesource.com/v8/v8/+/6588187ae3acaa5b40762c539ee9fe355551bea3 TBR=martyn.capewell@arm.com,bmeurer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:6020 Review-Url: https://codereview.chromium.org/2810703003 Cr-Commit-Position: refs/heads/master@{#44537}
-
bbudge authored
LOG=N BUG=v8:6020 Review-Url: https://codereview.chromium.org/2797923006 Cr-Commit-Position: refs/heads/master@{#44536}
-
thestig authored
This was added in commit 40611, but the std::cout calls are gone so the header is no longer needed. Remove trailing spaces in html files rom the same commit and from other html files in the same directory. Review-Url: https://codereview.chromium.org/2797253009 Cr-Commit-Position: refs/heads/master@{#44535}
-
Ross McIlroy authored
Moves interpreter-generator.cc to a similar model of building handlers as Turbofan stubs elsewhere, to simplify moving code between stubs / builtins and bytecode handlers. This removes the "__" hack from the Interpreter generator code. Also make SetBytecodeOffset private to InterpreterAssembler and make LdaImmutable[Current]ContextSlot and Lda[Current]ContextSlot share handlers since they are identical. Change-Id: I9e91e7d37c2ea75513e4dcc3b95b4bb6517f83da Reviewed-on: https://chromium-review.googlesource.com/471987 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#44534}
-
Leszek Swirski authored
Make sure that the current bytecode's size is taken into account when updating the interrupt budget (on jumps and returns), so that jumps are not "free" from an interrupt point of view. Also clarifies, corrects and cleans up the interrupt budget update for returns. Bug: v8:6238 Change-Id: I1099d53a232fab4c1fcc91115baee610bfbce1d6 Reviewed-on: https://chromium-review.googlesource.com/472809Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#44533}
-
kozyatinskiy authored
It's possible to get undefined as a result of Object.getOwnPropertyDescriptor. We should be ready for this. BUG=chromium:707670 R=alph@chromium.org Review-Url: https://codereview.chromium.org/2801763002 Cr-Commit-Position: refs/heads/master@{#44532}
-
Peter Marshall authored
We assumed that every JSArray would have a JSObject as a prototype, but it could be null, in which case we bail out to slow path. Also rename spread_array variable here, because this fast-path isn't just used by spreads anymore. Bug: chromium:707675 Change-Id: I8045d83977735dd00c3ebde2e0704f6b04afdedd Reviewed-on: https://chromium-review.googlesource.com/472907Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#44531}
-
Leszek Swirski authored
Adds a collection of call bytecodes which have an implicit undefined receiver argument, for cases such as global calls where we know that the receiver has to be undefined. This way we can skip an LdaUndefined, decrease bytecode register pressure, and set a more accurate ConvertReceiverMode on the interpreter and TurboFan call. As a side effect, the "normal" Call bytecode now becomes a rare case (only with calls and super property calls), so we get rid of its 0-2 argument special cases and modify CallProperty[N] to use the NotNullOrUndefined ConvertReceiverMode. Change-Id: I9374a32fefd66fc0251b5193bae7a6b7dc31eefc Reviewed-on: https://chromium-review.googlesource.com/463287 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#44530}
-