-
Joyee Cheung authored
This patch adds a new assign type `PRIVATE_METHOD`. We now use this for private method references in the form `obj.#key` when `#key` resolves to a private method. To obtain the type of the key variables after scope analysis, this patch add a bit to Variable to recognize private method variables whose load requires a brand check. Also renamed `PropertyExpressionWithPrivateFieldKey` in ExpressionType to `PrivateReference` and added `PRIVATE_CALL` to `CallType` - we'll use the new types later when we implement private methods, which require special brand checking semantics to load methods directly from the context instead of from the object in order to save memory. Bug: v8:8330 Change-Id: Idc1dcd4d514c1b3f8a31c99e49e34249449f0677 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1642772 Commit-Queue: Joyee Cheung <joyee@igalia.com> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#62255}
259d0ace