Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[interp] Add float32 Vector128.Equals #86738

Merged
merged 1 commit into from
May 25, 2023
Merged

[interp] Add float32 Vector128.Equals #86738

merged 1 commit into from
May 25, 2023

Conversation

kg
Copy link
Member

@kg kg commented May 25, 2023

Should help address some of the regressions from dotnet/perf-autofiling-issues#18031

@ghost
Copy link

ghost commented May 25, 2023

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

Issue Details

Should help address some of the regressions from dotnet/perf-autofiling-issues#18031

Author: kg
Assignees: -
Labels:

area-Codegen-Interpreter-mono

Milestone: -

@kg
Copy link
Member Author

kg commented May 25, 2023

With this changed, the generated code for Matrix4x4.Equals looks roughly like this:

instrumented trace MatrixTestLoopBody:0 exited at end of body @1b5cf22
1b5ccf6 ldobj.vt 8 -> 96
1b5ccfe mov.vt 96 -> 16
1b5cd06 ldloca.s  -> 96
1b5cd0c mov.4 96 -> 88
1b5cd12 mov.4 0 -> 80
1b5cd18 ldflda 0 -> 104
1b5cd20 ldfld.vt 96 -> 112
1b5cd2a ldobj.vt 104 -> 128
1b5cd32 V128_R4_EQUALS 128, 112 -> 144
1b5cd3c V128_R4_EQUALS 128, 128 -> 160
1b5cd46 V128_R4_EQUALS 112, 112 -> 176
1b5cd50 V128_BITWISE_OR 160, 176 -> 160
1b5cd5a V128_ONES_COMPLEMENT 160 -> 160
1b5cd62 V128_BITWISE_OR 144, 160 -> 96
1b5cd6c simd_v128_ldc  -> 112
1b5cd80 V128_BITWISE_EQUALITY 96, 112 -> 96
1b5cd8a brfalse.i4.s 96
1b5cd90 ldflda 80 -> 96
1b5cd98 ldfld.vt 88 -> 112
1b5cda2 ldobj.vt 96 -> 128
1b5cdaa V128_R4_EQUALS 128, 112 -> 144
1b5cdb4 V128_R4_EQUALS 128, 128 -> 160
1b5cdbe V128_R4_EQUALS 112, 112 -> 176
1b5cdc8 V128_BITWISE_OR 160, 176 -> 160
1b5cdd2 V128_ONES_COMPLEMENT 160 -> 160
1b5cdda V128_BITWISE_OR 144, 160 -> 96
1b5cde4 simd_v128_ldc  -> 112
1b5cdf8 V128_BITWISE_EQUALITY 96, 112 -> 96
1b5ce02 brfalse.i4.s 96
1b5ce08 ldflda 80 -> 96
1b5ce10 ldfld.vt 88 -> 112
1b5ce1a ldobj.vt 96 -> 128
1b5ce22 V128_R4_EQUALS 128, 112 -> 144
1b5ce2c V128_R4_EQUALS 128, 128 -> 160
1b5ce36 V128_R4_EQUALS 112, 112 -> 176
1b5ce40 V128_BITWISE_OR 160, 176 -> 160
1b5ce4a V128_ONES_COMPLEMENT 160 -> 160
1b5ce52 V128_BITWISE_OR 144, 160 -> 96
1b5ce5c simd_v128_ldc  -> 112
1b5ce70 V128_BITWISE_EQUALITY 96, 112 -> 96
1b5ce7a brfalse.i4.s 96
1b5ce80 ldflda 80 -> 96
1b5ce88 ldfld.vt 88 -> 112
1b5ce92 ldobj.vt 96 -> 128
1b5ce9a V128_R4_EQUALS 128, 112 -> 144
1b5cea4 V128_R4_EQUALS 128, 128 -> 160
1b5ceae V128_R4_EQUALS 112, 112 -> 176
1b5ceb8 V128_BITWISE_OR 160, 176 -> 160
1b5cec2 V128_ONES_COMPLEMENT 160 -> 160
1b5ceca V128_BITWISE_OR 144, 160 -> 96
1b5ced4 simd_v128_ldc  -> 112
1b5cee8 V128_BITWISE_EQUALITY 96, 112 -> 96
1b5cef2 brtrue.i4.s 96
1b5cef8 ldstr  -> 96
1b5cefe newobj_inlined  -> 104
1b5cf04 ldc.i4  -> 112
1b5cf0c stfld.i4 104, 112
1b5cf14 stfld.o 104, 96
1b5cf1c throw 104
1b5cf20 ret.void 

@kg
Copy link
Member Author

kg commented May 25, 2023

iOS/tvOS failures are unrelated

Sign up for free to 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