Commit 2c9263a
committed
[clr-interp] Add support for virtual calls (including interface)
This follows a trivial approach where we resolve the MethodDesc of the target method by reusing existing functionality. Long term, virtual dispatching should go through slots continaing interpreter IR code pointer, in a similar fashion to JIT.1 parent 4d80feb commit 2c9263a
File tree
5 files changed
+73
-27
lines changed- src/coreclr
- interpreter
- vm
5 files changed
+73
-27
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1539 | 1539 | | |
1540 | 1540 | | |
1541 | 1541 | | |
| 1542 | + | |
1542 | 1543 | | |
1543 | 1544 | | |
1544 | 1545 | | |
1545 | 1546 | | |
1546 | 1547 | | |
1547 | 1548 | | |
| 1549 | + | |
| 1550 | + | |
| 1551 | + | |
| 1552 | + | |
| 1553 | + | |
1548 | 1554 | | |
1549 | 1555 | | |
1550 | 1556 | | |
| |||
1588 | 1594 | | |
1589 | 1595 | | |
1590 | 1596 | | |
1591 | | - | |
| 1597 | + | |
| 1598 | + | |
| 1599 | + | |
| 1600 | + | |
| 1601 | + | |
| 1602 | + | |
| 1603 | + | |
| 1604 | + | |
| 1605 | + | |
| 1606 | + | |
1592 | 1607 | | |
1593 | 1608 | | |
1594 | | - | |
1595 | 1609 | | |
1596 | 1610 | | |
1597 | 1611 | | |
| |||
2630 | 2644 | | |
2631 | 2645 | | |
2632 | 2646 | | |
| 2647 | + | |
2633 | 2648 | | |
2634 | 2649 | | |
2635 | 2650 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
246 | 246 | | |
247 | 247 | | |
248 | 248 | | |
| 249 | + | |
249 | 250 | | |
250 | 251 | | |
251 | 252 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
| 57 | + | |
57 | 58 | | |
58 | 59 | | |
59 | 60 | | |
| |||
972 | 973 | | |
973 | 974 | | |
974 | 975 | | |
| 976 | + | |
| 977 | + | |
| 978 | + | |
| 979 | + | |
| 980 | + | |
| 981 | + | |
| 982 | + | |
| 983 | + | |
| 984 | + | |
| 985 | + | |
| 986 | + | |
| 987 | + | |
| 988 | + | |
| 989 | + | |
| 990 | + | |
| 991 | + | |
| 992 | + | |
| 993 | + | |
| 994 | + | |
| 995 | + | |
| 996 | + | |
| 997 | + | |
| 998 | + | |
| 999 | + | |
| 1000 | + | |
| 1001 | + | |
| 1002 | + | |
| 1003 | + | |
| 1004 | + | |
975 | 1005 | | |
976 | 1006 | | |
977 | 1007 | | |
| |||
981 | 1011 | | |
982 | 1012 | | |
983 | 1013 | | |
984 | | - | |
| 1014 | + | |
985 | 1015 | | |
986 | 1016 | | |
987 | 1017 | | |
| |||
1012 | 1042 | | |
1013 | 1043 | | |
1014 | 1044 | | |
1015 | | - | |
| 1045 | + | |
| 1046 | + | |
1016 | 1047 | | |
1017 | 1048 | | |
1018 | 1049 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2000 | 2000 | | |
2001 | 2001 | | |
2002 | 2002 | | |
2003 | | - | |
2004 | | - | |
2005 | | - | |
2006 | | - | |
2007 | | - | |
| 2003 | + | |
2008 | 2004 | | |
2009 | | - | |
| 2005 | + | |
2010 | 2006 | | |
2011 | 2007 | | |
2012 | 2008 | | |
| |||
2016 | 2012 | | |
2017 | 2013 | | |
2018 | 2014 | | |
2019 | | - | |
2020 | 2015 | | |
2021 | 2016 | | |
2022 | 2017 | | |
2023 | 2018 | | |
2024 | 2019 | | |
2025 | 2020 | | |
2026 | | - | |
2027 | 2021 | | |
2028 | 2022 | | |
2029 | 2023 | | |
2030 | 2024 | | |
2031 | | - | |
2032 | | - | |
2033 | | - | |
2034 | | - | |
2035 | | - | |
2036 | | - | |
2037 | | - | |
2038 | | - | |
2039 | | - | |
2040 | | - | |
2041 | | - | |
| 2025 | + | |
2042 | 2026 | | |
2043 | 2027 | | |
2044 | 2028 | | |
2045 | 2029 | | |
2046 | | - | |
2047 | | - | |
| 2030 | + | |
2048 | 2031 | | |
2049 | 2032 | | |
| 2033 | + | |
| 2034 | + | |
2050 | 2035 | | |
2051 | | - | |
| 2036 | + | |
| 2037 | + | |
| 2038 | + | |
| 2039 | + | |
| 2040 | + | |
| 2041 | + | |
| 2042 | + | |
| 2043 | + | |
| 2044 | + | |
| 2045 | + | |
| 2046 | + | |
| 2047 | + | |
| 2048 | + | |
2052 | 2049 | | |
2053 | | - | |
| 2050 | + | |
| 2051 | + | |
2054 | 2052 | | |
2055 | 2053 | | |
2056 | 2054 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1429 | 1429 | | |
1430 | 1430 | | |
1431 | 1431 | | |
| 1432 | + | |
1432 | 1433 | | |
1433 | 1434 | | |
1434 | 1435 | | |
| |||
0 commit comments