Commit 940b332
authored
[mini] Fix typo in mono_decompose_vtype_opts (#90825)
* Fix typo in mono_decompose_vtype_opts
Without this, if some previous instruction already created a vreg for
ins->dest (for example if we are doing multiple passes over the basic
block because `restart == TRUE`) we will use an incorrect vreg when
decomposing the current VMOVE
Fixes #90800
* Only emit an OP_LDTOKEN_FIELD if we loaded a field token
This is used by a CreateSpan optimization that needs access to the
MonoClassField*
For other cases of a bare LDTOKEN (such as hand-written IL that calls
LDTOKEN on a type but doesn't follow it up with a call to
`GetTypeFromHandle` leave the opcode as a VMOVE (from the
`EMIT_NEW_TEMPLOAD` above))1 parent 31234a8 commit 940b332
2 files changed
+9
-6
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1226 | 1226 | | |
1227 | 1227 | | |
1228 | 1228 | | |
1229 | | - | |
| 1229 | + | |
1230 | 1230 | | |
1231 | 1231 | | |
1232 | 1232 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10840 | 10840 | | |
10841 | 10841 | | |
10842 | 10842 | | |
10843 | | - | |
10844 | | - | |
10845 | | - | |
| 10843 | + | |
| 10844 | + | |
| 10845 | + | |
| 10846 | + | |
| 10847 | + | |
| 10848 | + | |
| 10849 | + | |
| 10850 | + | |
10846 | 10851 | | |
10847 | | - | |
10848 | | - | |
10849 | 10852 | | |
10850 | 10853 | | |
10851 | 10854 | | |
| |||
0 commit comments