| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent de8386d commit 1acd8df
3 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -38,7 +38,7 @@ | |||
| 38 | 38 | ||
| 39 | 39 | # Reset this number to 0 on major V8 upgrades. | |
| 40 | 40 | # Increment by one for each non-official patch applied to deps/v8. | |
| 41 | - 'v8_embedder_string': '-node.7', | ||
| 41 | + 'v8_embedder_string': '-node.8', | ||
| 42 | 42 | ||
| 43 | 43 | ##### V8 defaults for Node.js ##### | |
| 44 | 44 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -66,12 +66,15 @@ struct builtin { | |||
| 66 | 66 | // if necessary. | |
| 67 | 67 | static constexpr std::size_t kMaxArgumentCount = 8; | |
| 68 | 68 | using arguments_vector_t = base::SmallVector<OpIndex, kMaxArgumentCount>; | |
| 69 | - static constexpr inline detail::IndexTag<0> index_counter( | ||
| 70 | - detail::IndexTag<0>); | ||
| 71 | - static constexpr base::tmp::list<> make_args_type_list_n(detail::IndexTag<0>); | ||
| 69 | + // TODO(abmusse): use ArgumentsBase (until we can use GCC 13 or better) | ||
| 70 | + struct ArgumentsBase { | ||
| 71 | + static constexpr inline detail::IndexTag<0> index_counter( | ||
| 72 | + detail::IndexTag<0>); | ||
| 73 | + static constexpr base::tmp::list<> make_args_type_list_n( | ||
| 74 | + detail::IndexTag<0>); | ||
| 75 | + }; | ||
| 72 | 76 | ||
| 73 | 77 | static constexpr OpEffects base_effects = OpEffects().CanDependOnChecks(); | |
| 74 | - | ||
| 75 | 78 | template <typename A> | |
| 76 | 79 | static arguments_vector_t ArgumentsToVector(const A& args) { | |
| 77 | 80 | arguments_vector_t result; | |
@@ -169,7 +172,7 @@ struct builtin { | |||
| 169 | 172 | ||
| 170 | 173 | struct BigIntAdd : public Descriptor<BigIntAdd> { | |
| 171 | 174 | static constexpr auto kFunction = Builtin::kBigIntAdd; | |
| 172 | - struct Arguments { | ||
| 175 | + struct Arguments : ArgumentsBase { | ||
| 173 | 176 | ARG(V<Numeric>, left) | |
| 174 | 177 | ARG(V<Numeric>, right) | |
| 175 | 178 | }; | |
@@ -183,7 +186,7 @@ struct builtin { | |||
| 183 | 186 | ||
| 184 | 187 | struct CheckTurbofanType : public Descriptor<CheckTurbofanType> { | |
| 185 | 188 | static constexpr auto kFunction = Builtin::kCheckTurbofanType; | |
| 186 | - struct Arguments { | ||
| 189 | + struct Arguments : ArgumentsBase { | ||
| 187 | 190 | ARG(V<Object>, value) | |
| 188 | 191 | ARG(V<TurbofanType>, expected_type) | |
| 189 | 192 | ARG(V<Smi>, node_id) | |
@@ -201,7 +204,7 @@ struct builtin { | |||
| 201 | 204 | #define DECL_GENERIC_BINOP(Name) \ | |
| 202 | 205 | struct Name : public Descriptor<Name> { \ | |
| 203 | 206 | static constexpr auto kFunction = Builtin::k##Name; \ | |
| 204 | - struct Arguments { \ | ||
| 207 | + struct Arguments : ArgumentsBase { \ | ||
| 205 | 208 | ARG(V<Object>, left) \ | |
| 206 | 209 | ARG(V<Object>, right) \ | |
| 207 | 210 | }; \ | |
@@ -219,7 +222,7 @@ struct builtin { | |||
| 219 | 222 | #define DECL_GENERIC_UNOP(Name) \ | |
| 220 | 223 | struct Name : public Descriptor<Name> { \ | |
| 221 | 224 | static constexpr auto kFunction = Builtin::k##Name; \ | |
| 222 | - struct Arguments { \ | ||
| 225 | + struct Arguments : ArgumentsBase { \ | ||
| 223 | 226 | ARG(V<Object>, input) \ | |
| 224 | 227 | }; \ | |
| 225 | 228 | using returns_t = std::tuple<V<Object>>; \ | |
@@ -235,7 +238,7 @@ struct builtin { | |||
| 235 | 238 | ||
| 236 | 239 | struct DetachContextCell : public Descriptor<DetachContextCell> { | |
| 237 | 240 | static constexpr auto kFunction = Builtin::kDetachContextCell; | |
| 238 | - struct Arguments { | ||
| 241 | + struct Arguments : ArgumentsBase { | ||
| 239 | 242 | ARG(V<Context>, the_context) | |
| 240 | 243 | ARG(V<Object>, new_value) | |
| 241 | 244 | ARG(V<WordPtr>, i) | |
@@ -251,7 +254,7 @@ struct builtin { | |||
| 251 | 254 | ||
| 252 | 255 | struct ToNumber : public Descriptor<ToNumber> { | |
| 253 | 256 | static constexpr auto kFunction = Builtin::kToNumber; | |
| 254 | - struct Arguments { | ||
| 257 | + struct Arguments : ArgumentsBase { | ||
| 255 | 258 | ARG(V<Object>, input) | |
| 256 | 259 | }; | |
| 257 | 260 | using returns_t = std::tuple<V<Number>>; | |
@@ -264,7 +267,7 @@ struct builtin { | |||
| 264 | 267 | ||
| 265 | 268 | struct NonNumberToNumber : public Descriptor<NonNumberToNumber> { | |
| 266 | 269 | static constexpr auto kFunction = Builtin::kNonNumberToNumber; | |
| 267 | - struct Arguments { | ||
| 270 | + struct Arguments : ArgumentsBase { | ||
| 268 | 271 | ARG(V<JSAnyNotNumber>, input) | |
| 269 | 272 | }; | |
| 270 | 273 | using returns_t = std::tuple<V<Number>>; | |
@@ -277,7 +280,7 @@ struct builtin { | |||
| 277 | 280 | ||
| 278 | 281 | struct ToNumeric : public Descriptor<ToNumeric> { | |
| 279 | 282 | static constexpr auto kFunction = Builtin::kToNumeric; | |
| 280 | - struct Arguments { | ||
| 283 | + struct Arguments : ArgumentsBase { | ||
| 281 | 284 | ARG(V<Object>, input) | |
| 282 | 285 | }; | |
| 283 | 286 | using returns_t = std::tuple<V<Numeric>>; | |
@@ -290,7 +293,7 @@ struct builtin { | |||
| 290 | 293 | ||
| 291 | 294 | struct NonNumberToNumeric : public Descriptor<NonNumberToNumeric> { | |
| 292 | 295 | static constexpr auto kFunction = Builtin::kNonNumberToNumeric; | |
| 293 | - struct Arguments { | ||
| 296 | + struct Arguments : ArgumentsBase { | ||
| 294 | 297 | ARG(V<JSAnyNotNumber>, input) | |
| 295 | 298 | }; | |
| 296 | 299 | using returns_t = std::tuple<V<Numeric>>; | |
@@ -304,7 +307,7 @@ struct builtin { | |||
| 304 | 307 | struct CopyFastSmiOrObjectElements | |
| 305 | 308 | : public Descriptor<CopyFastSmiOrObjectElements> { | |
| 306 | 309 | static constexpr auto kFunction = Builtin::kCopyFastSmiOrObjectElements; | |
| 307 | - struct Arguments { | ||
| 310 | + struct Arguments : ArgumentsBase { | ||
| 308 | 311 | ARG(V<Object>, object) | |
| 309 | 312 | }; | |
| 310 | 313 | using returns_t = std::tuple<V<Object>>; | |
@@ -321,7 +324,7 @@ struct builtin { | |||
| 321 | 324 | static constexpr auto kFunction = B; | |
| 322 | 325 | using StringOrSmi = Union<String, Smi>; | |
| 323 | 326 | // We use smi:0 for an empty label. | |
| 324 | - struct Arguments { | ||
| 327 | + struct Arguments : ArgumentsBase { | ||
| 325 | 328 | ARG(V<StringOrSmi>, label_or_0) | |
| 326 | 329 | ARG(V<Input>, value) | |
| 327 | 330 | }; | |
@@ -343,7 +346,7 @@ struct builtin { | |||
| 343 | 346 | template <Builtin B> | |
| 344 | 347 | struct FindOrderedHashEntry : public Descriptor<FindOrderedHashEntry<B>> { | |
| 345 | 348 | static constexpr auto kFunction = B; | |
| 346 | - struct Arguments { | ||
| 349 | + struct Arguments : ArgumentsBase { | ||
| 347 | 350 | ARG(V<Object>, table) | |
| 348 | 351 | ARG(V<Smi>, key) | |
| 349 | 352 | }; | |
@@ -363,7 +366,7 @@ struct builtin { | |||
| 363 | 366 | template <Builtin B> | |
| 364 | 367 | struct GrowFastElements : public Descriptor<GrowFastElements<B>> { | |
| 365 | 368 | static constexpr auto kFunction = B; | |
| 366 | - struct Arguments { | ||
| 369 | + struct Arguments : ArgumentsBase { | ||
| 367 | 370 | ARG(V<Object>, object) | |
| 368 | 371 | ARG(V<Smi>, size) | |
| 369 | 372 | }; | |
@@ -383,7 +386,7 @@ struct builtin { | |||
| 383 | 386 | template <Builtin B> | |
| 384 | 387 | struct NewArgumentsElements : public Descriptor<NewArgumentsElements<B>> { | |
| 385 | 388 | static constexpr auto kFunction = B; | |
| 386 | - struct Arguments { | ||
| 389 | + struct Arguments : ArgumentsBase { | ||
| 387 | 390 | // TODO(nicohartmann@): First argument should be replaced by a proper | |
| 388 | 391 | // RawPtr. | |
| 389 | 392 | ARG(V<WordPtr>, frame) | |
@@ -406,7 +409,7 @@ struct builtin { | |||
| 406 | 409 | ||
| 407 | 410 | struct NumberToString : public Descriptor<NumberToString> { | |
| 408 | 411 | static constexpr auto kFunction = Builtin::kNumberToString; | |
| 409 | - struct Arguments { | ||
| 412 | + struct Arguments : ArgumentsBase { | ||
| 410 | 413 | ARG(V<Number>, input) | |
| 411 | 414 | }; | |
| 412 | 415 | using returns_t = std::tuple<V<String>>; | |
@@ -420,7 +423,7 @@ struct builtin { | |||
| 420 | 423 | ||
| 421 | 424 | struct ToString : public Descriptor<ToString> { | |
| 422 | 425 | static constexpr auto kFunction = Builtin::kToString; | |
| 423 | - struct Arguments { | ||
| 426 | + struct Arguments : ArgumentsBase { | ||
| 424 | 427 | ARG(V<Object>, o) | |
| 425 | 428 | }; | |
| 426 | 429 | using returns_t = std::tuple<V<String>>; | |
@@ -433,7 +436,7 @@ struct builtin { | |||
| 433 | 436 | ||
| 434 | 437 | struct PlainPrimitiveToNumber : public Descriptor<PlainPrimitiveToNumber> { | |
| 435 | 438 | static constexpr auto kFunction = Builtin::kPlainPrimitiveToNumber; | |
| 436 | - struct Arguments { | ||
| 439 | + struct Arguments : ArgumentsBase { | ||
| 437 | 440 | ARG(V<PlainPrimitive>, input) | |
| 438 | 441 | }; | |
| 439 | 442 | using returns_t = std::tuple<V<Number>>; | |
@@ -447,7 +450,7 @@ struct builtin { | |||
| 447 | 450 | ||
| 448 | 451 | struct SameValue : public Descriptor<SameValue> { | |
| 449 | 452 | static constexpr auto kFunction = Builtin::kSameValue; | |
| 450 | - struct Arguments { | ||
| 453 | + struct Arguments : ArgumentsBase { | ||
| 451 | 454 | ARG(V<Object>, left) | |
| 452 | 455 | ARG(V<Object>, right) | |
| 453 | 456 | }; | |
@@ -462,7 +465,7 @@ struct builtin { | |||
| 462 | 465 | ||
| 463 | 466 | struct SameValueNumbersOnly : public Descriptor<SameValueNumbersOnly> { | |
| 464 | 467 | static constexpr auto kFunction = Builtin::kSameValueNumbersOnly; | |
| 465 | - struct Arguments { | ||
| 468 | + struct Arguments : ArgumentsBase { | ||
| 466 | 469 | ARG(V<Object>, left) | |
| 467 | 470 | ARG(V<Object>, right) | |
| 468 | 471 | }; | |
@@ -476,7 +479,7 @@ struct builtin { | |||
| 476 | 479 | ||
| 477 | 480 | struct StringAdd_CheckNone : public Descriptor<StringAdd_CheckNone> { | |
| 478 | 481 | static constexpr auto kFunction = Builtin::kStringAdd_CheckNone; | |
| 479 | - struct Arguments { | ||
| 482 | + struct Arguments : ArgumentsBase { | ||
| 480 | 483 | ARG(V<String>, left) | |
| 481 | 484 | ARG(V<String>, right) | |
| 482 | 485 | }; | |
@@ -494,7 +497,7 @@ struct builtin { | |||
| 494 | 497 | ||
| 495 | 498 | struct StringEqual : public Descriptor<StringEqual> { | |
| 496 | 499 | static constexpr auto kFunction = Builtin::kStringEqual; | |
| 497 | - struct Arguments { | ||
| 500 | + struct Arguments : ArgumentsBase { | ||
| 498 | 501 | ARG(V<String>, left) | |
| 499 | 502 | ARG(V<String>, right) | |
| 500 | 503 | ARG(V<WordPtr>, length) | |
@@ -512,7 +515,7 @@ struct builtin { | |||
| 512 | 515 | ||
| 513 | 516 | struct StringFromCodePointAt : public Descriptor<StringFromCodePointAt> { | |
| 514 | 517 | static constexpr auto kFunction = Builtin::kStringFromCodePointAt; | |
| 515 | - struct Arguments { | ||
| 518 | + struct Arguments : ArgumentsBase { | ||
| 516 | 519 | ARG(V<String>, receiver) | |
| 517 | 520 | ARG(V<WordPtr>, position) | |
| 518 | 521 | }; | |
@@ -527,7 +530,7 @@ struct builtin { | |||
| 527 | 530 | ||
| 528 | 531 | struct StringIndexOf : public Descriptor<StringIndexOf> { | |
| 529 | 532 | static constexpr auto kFunction = Builtin::kStringIndexOf; | |
| 530 | - struct Arguments { | ||
| 533 | + struct Arguments : ArgumentsBase { | ||
| 531 | 534 | ARG(V<String>, s) | |
| 532 | 535 | ARG(V<String>, search_string) | |
| 533 | 536 | ARG(V<Smi>, start) | |
@@ -545,7 +548,7 @@ struct builtin { | |||
| 545 | 548 | ||
| 546 | 549 | struct StringCompare : public Descriptor<StringCompare> { | |
| 547 | 550 | static constexpr auto kFunction = Builtin::kStringCompare; | |
| 548 | - struct Arguments { | ||
| 551 | + struct Arguments : ArgumentsBase { | ||
| 549 | 552 | ARG(V<String>, left) | |
| 550 | 553 | ARG(V<String>, right) | |
| 551 | 554 | }; | |
@@ -561,7 +564,7 @@ struct builtin { | |||
| 561 | 564 | template <Builtin B> | |
| 562 | 565 | struct StringComparison : public Descriptor<StringComparison<B>> { | |
| 563 | 566 | static constexpr auto kFunction = B; | |
| 564 | - struct Arguments { | ||
| 567 | + struct Arguments : ArgumentsBase { | ||
| 565 | 568 | ARG(V<String>, left) | |
| 566 | 569 | ARG(V<String>, right) | |
| 567 | 570 | }; | |
@@ -579,7 +582,7 @@ struct builtin { | |||
| 579 | 582 | ||
| 580 | 583 | struct StringSubstring : public Descriptor<StringSubstring> { | |
| 581 | 584 | static constexpr auto kFunction = Builtin::kStringSubstring; | |
| 582 | - struct Arguments { | ||
| 585 | + struct Arguments : ArgumentsBase { | ||
| 583 | 586 | ARG(V<String>, string) | |
| 584 | 587 | ARG(V<WordPtr>, from) | |
| 585 | 588 | ARG(V<WordPtr>, to) | |
@@ -596,7 +599,7 @@ struct builtin { | |||
| 596 | 599 | #ifdef V8_INTL_SUPPORT | |
| 597 | 600 | struct StringToLowerCaseIntl : public Descriptor<StringToLowerCaseIntl> { | |
| 598 | 601 | static constexpr auto kFunction = Builtin::kStringToLowerCaseIntl; | |
| 599 | - struct Arguments { | ||
| 602 | + struct Arguments : ArgumentsBase { | ||
| 600 | 603 | ARG(V<String>, string) | |
| 601 | 604 | }; | |
| 602 | 605 | using returns_t = std::tuple<V<String>>; | |
@@ -612,7 +615,7 @@ struct builtin { | |||
| 612 | 615 | ||
| 613 | 616 | struct StringToNumber : public Descriptor<StringToNumber> { | |
| 614 | 617 | static constexpr auto kFunction = Builtin::kStringToNumber; | |
| 615 | - struct Arguments { | ||
| 618 | + struct Arguments : ArgumentsBase { | ||
| 616 | 619 | ARG(V<String>, input) | |
| 617 | 620 | }; | |
| 618 | 621 | using returns_t = std::tuple<V<Number>>; | |
@@ -626,7 +629,7 @@ struct builtin { | |||
| 626 | 629 | ||
| 627 | 630 | struct ToBoolean : public Descriptor<ToBoolean> { | |
| 628 | 631 | static constexpr auto kFunction = Builtin::kToBoolean; | |
| 629 | - struct Arguments { | ||
| 632 | + struct Arguments : ArgumentsBase { | ||
| 630 | 633 | ARG(V<Object>, input) | |
| 631 | 634 | }; | |
| 632 | 635 | using returns_t = std::tuple<V<Boolean>>; | |
@@ -639,7 +642,7 @@ struct builtin { | |||
| 639 | 642 | ||
| 640 | 643 | struct ToObject : public Descriptor<ToObject> { | |
| 641 | 644 | static constexpr auto kFunction = Builtin::kToObject; | |
| 642 | - struct Arguments { | ||
| 645 | + struct Arguments : ArgumentsBase { | ||
| 643 | 646 | ARG(V<Object>, input) | |
| 644 | 647 | }; | |
| 645 | 648 | using returns_t = std::tuple<V<JSReceiver>>; | |
@@ -654,7 +657,7 @@ struct builtin { | |||
| 654 | 657 | template <Builtin B> | |
| 655 | 658 | struct CreateFunctionContext : public Descriptor<CreateFunctionContext<B>> { | |
| 656 | 659 | static constexpr auto kFunction = B; | |
| 657 | - struct Arguments { | ||
| 660 | + struct Arguments : ArgumentsBase { | ||
| 658 | 661 | ARG(V<ScopeInfo>, scope_info) | |
| 659 | 662 | ARG(V<Word32>, slots) | |
| 660 | 663 | }; | |
@@ -674,7 +677,7 @@ struct builtin { | |||
| 674 | 677 | ||
| 675 | 678 | struct FastNewClosure : public Descriptor<FastNewClosure> { | |
| 676 | 679 | static constexpr auto kFunction = Builtin::kFastNewClosure; | |
| 677 | - struct Arguments { | ||
| 680 | + struct Arguments : ArgumentsBase { | ||
| 678 | 681 | ARG(V<SharedFunctionInfo>, shared_function_info) | |
| 679 | 682 | ARG(V<FeedbackCell>, feedback_cell) | |
| 680 | 683 | }; | |
@@ -690,7 +693,7 @@ struct builtin { | |||
| 690 | 693 | ||
| 691 | 694 | struct Typeof : public Descriptor<Typeof> { | |
| 692 | 695 | static constexpr auto kFunction = Builtin::kTypeof; | |
| 693 | - struct Arguments { | ||
| 696 | + struct Arguments : ArgumentsBase { | ||
| 694 | 697 | ARG(V<Object>, object) | |
| 695 | 698 | }; | |
| 696 | 699 | using returns_t = std::tuple<V<String>>; | |
@@ -704,7 +707,7 @@ struct builtin { | |||
| 704 | 707 | struct CheckTurboshaftWord32Type | |
| 705 | 708 | : public Descriptor<CheckTurboshaftWord32Type> { | |
| 706 | 709 | static constexpr auto kFunction = Builtin::kCheckTurboshaftWord32Type; | |
| 707 | - struct Arguments { | ||
| 710 | + struct Arguments : ArgumentsBase { | ||
| 708 | 711 | ARG(V<Word32>, value) | |
| 709 | 712 | ARG(V<TurboshaftWord32Type>, expected_type) | |
| 710 | 713 | ARG(V<Smi>, node_id) | |
@@ -720,7 +723,7 @@ struct builtin { | |||
| 720 | 723 | struct CheckTurboshaftWord64Type | |
| 721 | 724 | : public Descriptor<CheckTurboshaftWord64Type> { | |
| 722 | 725 | static constexpr auto kFunction = Builtin::kCheckTurboshaftWord64Type; | |
| 723 | - struct Arguments { | ||
| 726 | + struct Arguments : ArgumentsBase { | ||
| 724 | 727 | ARG(V<Word32>, value_high) | |
| 725 | 728 | ARG(V<Word32>, value_low) | |
| 726 | 729 | ARG(V<TurboshaftWord64Type>, expected_type) | |
@@ -737,7 +740,7 @@ struct builtin { | |||
| 737 | 740 | struct CheckTurboshaftFloat32Type | |
| 738 | 741 | : public Descriptor<CheckTurboshaftFloat32Type> { | |
| 739 | 742 | static constexpr auto kFunction = Builtin::kCheckTurboshaftFloat32Type; | |
| 740 | - struct Arguments { | ||
| 743 | + struct Arguments : ArgumentsBase { | ||
| 741 | 744 | ARG(V<Float32>, value) | |
| 742 | 745 | ARG(V<TurboshaftFloat64Type>, expected_type) | |
| 743 | 746 | ARG(V<Smi>, node_id) | |
@@ -753,7 +756,7 @@ struct builtin { | |||
| 753 | 756 | struct CheckTurboshaftFloat64Type | |
| 754 | 757 | : public Descriptor<CheckTurboshaftFloat64Type> { | |
| 755 | 758 | static constexpr auto kFunction = Builtin::kCheckTurboshaftFloat64Type; | |
| 756 | - struct Arguments { | ||
| 759 | + struct Arguments : ArgumentsBase { | ||
| 757 | 760 | ARG(V<Float64>, value) | |
| 758 | 761 | ARG(V<TurboshaftFloat64Type>, expected_type) | |
| 759 | 762 | ARG(V<Smi>, node_id) | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -6477,7 +6477,7 @@ class VirtualObject : public FixedInputValueNodeT<0, VirtualObject> { | |||
| 6477 | 6477 | ||
| 6478 | 6478 | int slot_count() const { return slots_.length(); } | |
| 6479 | 6479 | ||
| 6480 | - vobj::ObjectType object_type() const { | ||
| 6480 | + constexpr vobj::ObjectType object_type() const { | ||
| 6481 | 6481 | return object_layout_->object_type; | |
| 6482 | 6482 | } | |
| 6483 | 6483 | ||
| Back | FazBrowse Home | New Git URL |
0 commit comments