Skip to content

[mono][interp] Allow passing vtypes with a single scalar field to nat… - #79686

Merged
vargaz merged 1 commit into
dotnet:mainfrom
vargaz:interp-vtype
Dec 16, 2022
Merged

[mono][interp] Allow passing vtypes with a single scalar field to nat…#79686
vargaz merged 1 commit into
dotnet:mainfrom
vargaz:interp-vtype

Conversation

@vargaz

Copy link
Copy Markdown
Contributor

…ive code using the faster code path.

This affects types like ObjectHandleOnStack which are passed to icalls.

@ghost

Copy link
Copy Markdown

Tagging subscribers to this area: @BrzVlad
See info in area-owners.md if you want to be subscribed.

Issue Details

…ive code using the faster code path.

This affects types like ObjectHandleOnStack which are passed to icalls.

Author:vargaz
Assignees:vargaz
Labels:

area-Codegen-Interpreter-mono

Milestone:-

@vargaz

Copy link
Copy Markdown
ContributorAuthor

This will hopefully fix some of the perf regressions in
#79607

Comment threadsrc/mono/mono/mini/interp/transform.c Outdated
@vargaz

vargaz commented Dec 15, 2022

Copy link
Copy Markdown
ContributorAuthor

On most platforms, passing scalar vtypes is done by value, so this should work. If it doesn't, we can ifdef it for the platforms where it works.

@vargaz

Copy link
Copy Markdown
ContributorAuthor

The interpreter test failures are relevant.

@BrzVlad

Copy link
Copy Markdown
Member

we should probably have consistency between the primitive types that are considered to be passable as a native int and the allowed types of the struct field.

…ive code using the faster code path.
This affects types like ObjectHandleOnStack which are passed to icalls.
@vargaz

Copy link
Copy Markdown
ContributorAuthor

Failures are unrelated

Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@vargaz@BrzVlad