Commit 04f717e
committed
Initial component model and GC support in fused adapters
This lays down the initial infrastructure for support for GC in our fused
adapters for the component model. We keep track of whether each lifted/lowered
function wants args/results as GC values or in linear memory. We additionally
plumb through the core function types of the functions being lifted and lowered
for (eventual) use with GC adapters.
Ultimately, this commit is enough to fuse together lifted and lowered functions
where one or both are using the GC variant of the canonical ABI. Attempting to
actually pass arguments will hit `todo!()`s. The work of implementing those
`todo!()`s is left to future commits.1 parent a8e0d07 commit 04f717e
File tree
14 files changed
+1190
-435
lines changed- crates
- cranelift/src/compiler
- environ/src
- component
- translate
- fact
- test-util/src
- wasmtime/src/runtime/component
- tests/misc_testsuite/component-model-gc
14 files changed
+1190
-435
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
388 | 388 | | |
389 | 389 | | |
390 | 390 | | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
391 | 396 | | |
392 | 397 | | |
393 | 398 | | |
| |||
398 | 403 | | |
399 | 404 | | |
400 | 405 | | |
401 | | - | |
| 406 | + | |
402 | 407 | | |
403 | 408 | | |
404 | 409 | | |
| |||
739 | 744 | | |
740 | 745 | | |
741 | 746 | | |
742 | | - | |
743 | | - | |
744 | 747 | | |
745 | 748 | | |
746 | 749 | | |
747 | 750 | | |
| 751 | + | |
748 | 752 | | |
749 | 753 | | |
750 | 754 | | |
751 | 755 | | |
| 756 | + | |
| 757 | + | |
| 758 | + | |
| 759 | + | |
| 760 | + | |
752 | 761 | | |
753 | 762 | | |
754 | 763 | | |
| |||
1298 | 1307 | | |
1299 | 1308 | | |
1300 | 1309 | | |
| 1310 | + | |
| 1311 | + | |
| 1312 | + | |
| 1313 | + | |
| 1314 | + | |
1301 | 1315 | | |
1302 | | - | |
| 1316 | + | |
1303 | 1317 | | |
1304 | | - | |
| 1318 | + | |
1305 | 1319 | | |
1306 | 1320 | | |
1307 | 1321 | | |
| |||
1328 | 1342 | | |
1329 | 1343 | | |
1330 | 1344 | | |
| 1345 | + | |
| 1346 | + | |
| 1347 | + | |
| 1348 | + | |
| 1349 | + | |
1331 | 1350 | | |
1332 | 1351 | | |
1333 | 1352 | | |
1334 | 1353 | | |
1335 | | - | |
1336 | | - | |
| 1354 | + | |
| 1355 | + | |
1337 | 1356 | | |
1338 | 1357 | | |
1339 | 1358 | | |
| |||
1368 | 1387 | | |
1369 | 1388 | | |
1370 | 1389 | | |
| 1390 | + | |
| 1391 | + | |
| 1392 | + | |
| 1393 | + | |
| 1394 | + | |
1371 | 1395 | | |
1372 | 1396 | | |
1373 | 1397 | | |
1374 | 1398 | | |
1375 | | - | |
1376 | | - | |
| 1399 | + | |
| 1400 | + | |
1377 | 1401 | | |
1378 | 1402 | | |
1379 | 1403 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
| 35 | + | |
35 | 36 | | |
36 | 37 | | |
37 | 38 | | |
| |||
194 | 195 | | |
195 | 196 | | |
196 | 197 | | |
| 198 | + | |
197 | 199 | | |
198 | 200 | | |
199 | 201 | | |
| |||
414 | 416 | | |
415 | 417 | | |
416 | 418 | | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
417 | 432 | | |
418 | 433 | | |
419 | 434 | | |
420 | 435 | | |
421 | 436 | | |
422 | 437 | | |
423 | | - | |
424 | | - | |
425 | 438 | | |
426 | 439 | | |
427 | 440 | | |
| 441 | + | |
428 | 442 | | |
429 | 443 | | |
430 | 444 | | |
| |||
651 | 665 | | |
652 | 666 | | |
653 | 667 | | |
654 | | - | |
| 668 | + | |
| 669 | + | |
| 670 | + | |
| 671 | + | |
| 672 | + | |
| 673 | + | |
655 | 674 | | |
656 | 675 | | |
657 | 676 | | |
658 | 677 | | |
659 | 678 | | |
| 679 | + | |
660 | 680 | | |
661 | 681 | | |
662 | 682 | | |
| |||
686 | 706 | | |
687 | 707 | | |
688 | 708 | | |
689 | | - | |
690 | | - | |
| 709 | + | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
691 | 720 | | |
692 | 721 | | |
693 | 722 | | |
694 | 723 | | |
695 | 724 | | |
696 | | - | |
697 | | - | |
698 | 725 | | |
699 | 726 | | |
700 | 727 | | |
| 728 | + | |
701 | 729 | | |
702 | 730 | | |
703 | 731 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
450 | 450 | | |
451 | 451 | | |
452 | 452 | | |
| 453 | + | |
| 454 | + | |
453 | 455 | | |
454 | 456 | | |
455 | 457 | | |
| |||
480 | 482 | | |
481 | 483 | | |
482 | 484 | | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
483 | 507 | | |
484 | 508 | | |
485 | 509 | | |
| |||
489 | 513 | | |
490 | 514 | | |
491 | 515 | | |
492 | | - | |
493 | | - | |
494 | | - | |
495 | | - | |
496 | | - | |
497 | | - | |
498 | 516 | | |
499 | 517 | | |
500 | 518 | | |
| |||
503 | 521 | | |
504 | 522 | | |
505 | 523 | | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
506 | 528 | | |
507 | 529 | | |
508 | 530 | | |
| |||
0 commit comments