Commit 7fcbde16 authored by Santiago Aboy Solanes's avatar Santiago Aboy Solanes Committed by Commit Bot

[CSA][cleanup] TNodify builtins regexp gen

Bug: v8:6949, v8:9396
Change-Id: I035a00f61077e49377c9cd39ae1b216a80c98e6b
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803615Reviewed-by: 's avatarDan Elphick <delphick@chromium.org>
Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63848}
parent c3d7f5f1
This diff is collapsed.
......@@ -139,17 +139,17 @@ class RegExpBuiltinsAssembler : public CodeStubAssembler {
// Performs fast path checks on the given object itself, but omits prototype
// checks.
Node* IsFastRegExpNoPrototype(SloppyTNode<Context> context,
SloppyTNode<Object> object);
Node* IsFastRegExpNoPrototype(SloppyTNode<Context> context,
SloppyTNode<Object> object,
SloppyTNode<Map> map);
TNode<BoolT> IsFastRegExpNoPrototype(TNode<Context> context,
TNode<Object> object);
TNode<BoolT> IsFastRegExpNoPrototype(TNode<Context> context,
TNode<Object> object, TNode<Map> map);
// For debugging only. Uses a slow GetProperty call to fetch object.exec.
TNode<BoolT> IsFastRegExpWithOriginalExec(TNode<Context> context,
TNode<JSRegExp> object);
void BranchIfFastRegExpResult(Node* const context, Node* const object,
void BranchIfFastRegExpResult(const TNode<Context> context,
const TNode<Object> object,
Label* if_isunmodified, Label* if_ismodified);
TNode<String> FlagsGetter(TNode<Context> context, TNode<Object> regexp,
......@@ -167,10 +167,14 @@ class RegExpBuiltinsAssembler : public CodeStubAssembler {
TNode<BoolT> FlagGetter(TNode<Context> context, TNode<Object> regexp,
JSRegExp::Flag flag, bool is_fastpath);
Node* RegExpInitialize(Node* const context, Node* const regexp,
Node* const maybe_pattern, Node* const maybe_flags);
TNode<Object> RegExpInitialize(const TNode<Context> context,
const TNode<JSRegExp> regexp,
const TNode<Object> maybe_pattern,
const TNode<Object> maybe_flags);
TNode<Object> RegExpExec(TNode<Context> context, Node* regexp, Node* string);
TNode<Object> RegExpExec(TNode<Context> context,
TNode<JSReceiver> maybe_regexp,
TNode<String> string);
TNode<Number> AdvanceStringIndex(SloppyTNode<String> string,
SloppyTNode<Number> index,
......
......@@ -22,7 +22,7 @@ namespace regexp {
BranchIfFastRegExp_Permissive(o) otherwise return true, return false;
}
extern macro RegExpBuiltinsAssembler::RegExpExec(Context, JSAny, JSAny):
extern macro RegExpBuiltinsAssembler::RegExpExec(Context, JSReceiver, String):
JSAny;
extern macro
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment