- 29 6月, 2022 12 次提交
-
-
由 Zoltan Varga 提交于
* [mono] Use GenericArraySortHelper<T> on mono as well. * Remove unnecessarily DynamicDependency attributes.
-
由 Alex Rønne Petersen 提交于
Fixes dotnet/runtime#71056.
-
由 Elinor Fung 提交于
-
由 Michal Strehovský 提交于
* The ones on `CreateArraySortHelper` were introduced before we introduced dataflow annotations on `CreateInstanceForAnotherGenericParameter`. This should now just fall out naturally. * The ones on `InvokerEmitUtil` were added recently in #67917. I'm going to assume it's just a cargo cult because the reflection within the methods is fully analyzable. We would need warning suppressions if it wasn't.
-
由 Kunal Pathak 提交于
* do not squash commits * point to pr-guide
-
由 Andy Ayers 提交于
Add loop table checking to the post-phase list, conditional on whether the table is expected to be valid. Declare that the table is valid from the end of the find loops phase to the end of the optimization phases. Add checks that sibling loops are fully disjoint, no child shares top with its parent, and all top-entry loops have at most one non-loop backedge. Expand set of phases that opt into the "common" poost phase checks to include all those between find loops and hoisting. Closes #71084. Closes #71071.
-
由 Radek Doulik 提交于
* [wasm] Add Vector128.OnesComplement SIMD intrinsic Add wasm specific implementation of `Vector128.OnesComplement` method. Example compilation output. Managed: static Vector128<double> SimdTest3(Vector128<double> input) { return Vector128.OnesComplement(input); } IR: BB3: ; preds = %BB2 %cast_to_4_x_i32 = bitcast <2 x double> %simd_vtype to <4 x i32> %wasm_not = xor <4 x i32> %cast_to_4_x_i32, <i32 -1, i32 -1, i32 -1, i32 -1> %cast_back = bitcast <4 x i32> %wasm_not to <2 x double> br label %BB4 wasm - Debug configuration: (func Wasm_Console_V8_CJS_Sample_Test_SimdTest3_System_Runtime_Intrinsics_Vector128_1_double(param $0 i32, $1 i32, $2 i32)) local $3 i32 local $4 i32 local $5 v128 local $6 v128 0x00cf955a: global.get $__stack_pointer 0x00cf955c: local.set $3 0x00cf955e: i32.const 16 0x00cf9560: local.set $4 0x00cf9562: local.get $3 0x00cf9564: local.get $4 0x00cf9566: i32.sub 0x00cf9567: drop 0x00cf9568: local.get $1 0x00cf956a: v128.load align:4 [SIMD] 0x00cf956e: local.set $5 0x00cf9570: local.get $5 0x00cf9572: v128.not [SIMD] 0x00cf9574: local.set $6 0x00cf9576: local.get $6 0x00cf9578: drop 0x00cf9579: local.get $0 0x00cf957b: local.get $6 0x00cf957d: v128.store [SIMD] 0x00cf9581: return wasm - Release configuration: (func idx:7866(param $0 i32, $1 i32, $2 i32)) 0x00185b37: local.get $0 0x00185b39: local.get $1 0x00185b3b: v128.load align:4 [SIMD] 0x00185b3f: v128.not [SIMD] 0x00185b41: v128.store [SIMD] * Apply feedback * Add `--enable-simd` to `wasm-opt` again * Fix build
-
由 Andy Ayers 提交于
This should have gone in with #60355. It was included in the 6.0 port (#69630). Now adding it to main as well.
-
由 Stephen Toub 提交于
-
由 Stephen Toub 提交于
Enable IDE0170 (Simplify property pattern) and IDE0200 (remove unnecessary lambda expression) (#71011) As part of updating the config file with recently added rules, also turn on a few of them.
-
由 Jakob Botsch Nielsen 提交于
TYP_UINT is only meaningful for certain operations in the JIT and nodes can/should never produce values of this type. Fix #71360
-
由 Jeremy Koritzinsky 提交于
This test coverage also found some interesting behavior (issue TBD) in the following scenario: Given a `<byreflike T>` (aka a `T` that can be a byreflike type), we allow passing this to a `<U>` generic parameter (where `U` does not allow byref-like types). We do correctly throw when instantiating the generic with a byreflike type though, so we don't end up in a bad state. I've marked this test with an ActiveIssue attribute pending feedback on whether or not this is a bug.
-
- 28 6月, 2022 24 次提交
-
-
由 Stephen Toub 提交于
Handle the case where _chars.Length * 2 is too large to be an array but _pos + additionalCapacityBeyondPos is small enough to be an array.
-
由 Jan Kotas 提交于
Consistency with runtime and SDK download urls and other docs.
-
由 dotnet bot 提交于
-
由 Andrii Kurdiumov 提交于
* Simplify instructions for using ILC Because Microsoft.DotNet.ILCompiler on Nuget now, it's reasonable to inform user that adding custom nuget feed is for daily builds of ILC * Attempt to improve docs * Address PR feedback * Removed unused file Co-authored-by: NJan Kotas <jkotas@microsoft.com>
-
由 Lakshan Fernando 提交于
* annoate specialized to be native aot compatible * FB * Update src/libraries/System.Collections.Specialized/src/System/Collections/Specialized/NameObjectCollectionBase.cs Co-authored-by: NMichal Strehovský <MichalStrehovsky@users.noreply.github.com> Co-authored-by: NMichal Strehovský <MichalStrehovsky@users.noreply.github.com>
-
由 Eirik Tsarpalis 提交于
* Rewire polymorphism metadata to the contract model * fix file ordering * Expand test coverage
-
由 Ilya Leoshkevich 提交于
GDB frequently prints the following complaint: BFD: warning: <in-memory> has a section extending past end of file warning: Discarding section .text which has a section size (28e) larger than the file size [in module <in-memory>] The problem is that GDBJIT emits the .text section with the type SHT_PROGBITS, but does not provide any contents. Fix by using SHT_NOBITS instead - this is how .text in separate debuginfo normally looks like. Co-authored-by: Ilya Leoshkevich <Ilya Leoshkevich>
-
由 Michal Strehovský 提交于
Fixes #67745. Support for static virtual methods that was added in #66084 was enough for compile-time resolution of static virtual methods, but didn't cover dynamic code. For example, given following code: ```csharp interface IFoo { static virtual void Frob(); } class SomeCaller<T> where T : IFoo { ... T.Frob(); } class SomeClass : IFoo { ... } ``` If we do `typeof(SomeCaller<>).MakeGenericType(typeof(SomeClass)` at runtime, the runtime has to find what method implements `IFoo.Frob` on `SomeClass` and ensure proper data structures are generated for `SomeCaller<SomeClass>` so that the call lands in the right spot at runtime. On a high level, what we need: * Change to the compiler to generate extra data ("interface dispatch maps") that lets us find an implementation of interface method X on a given type Y. * Change to the runtime to read the new data structure. * Change to the compiler to generate extra method bodies for types that can potentially be used with MakeGeneric at runtime. This is an overapproximation since we don't know the set of types that will really be used. * Change to type loader data structures to capture when shared generic code needs to do this mapping, and change the code in the compiler that emits it, and to the type loader that reads it. I've made it so that the dispatch logic between instance and static methods is shared. It's not strictly necessary for both to go into the same data structure, but it prevents duplicating the code on the emission and reading side. The side effect of that is that static virtual methods now go into the sealed vtable. We have to put them somewhere. This spot is as good as any. I've also had to make a small change to the ordering of data structure generation within the type loader. I've made it so that EEType/MethodTable structures are fully populated before we start filling out generic dictionaries. This prevents us from calling into the runtime dispatch logic with EETypes/MethodTables that are not actually built yet. I really didn't want to duplicate the dispatch logic into the type loader.
-
由 Thays Grazia 提交于
* Fix firefox tests * Update src/mono/wasm/debugger/BrowserDebugProxy/Firefox/FirefoxMonoProxy.cs Co-authored-by: NAnkit Jain <radical@gmail.com> * Remove whitespace Co-authored-by: NAnkit Jain <radical@gmail.com>
-
由 Kevin Jones 提交于
-
由 Stephen Toub 提交于
-
由 Kevin Jones 提交于
-
由 Elinor Fung 提交于
-
由 Jeremy Koritzinsky 提交于
-
由 SingleAccretion 提交于
Use the ABI info stored in the call arg instead of bespoke logic.
-
由 Krzysztof Wicher 提交于
* Argument tests for CreateJsonTypeInfo and CreateJsonPropertyInfo * add check for typeof(void) - possibly workaround #71339
-
由 Jakob Botsch Nielsen 提交于
For small locals we need to cast these to the type of the local when the assertion is created. Also add some checking on the loading side of these assertions. Fix #70607
-
由 Alexander Köplinger 提交于
-
由 Jakob Botsch Nielsen 提交于
-
由 Alexander Köplinger 提交于
-
由 Aaron Robinson 提交于
Matching preview 6 changes. Will change when C#11 language support is available.
-
由 dotnet-maestro[bot] 提交于
[main] Update dependencies from dotnet/runtime dnceng/internal/dotnet-optimization dotnet/icu dotnet/xharness dotnet/emsdk dotnet/roslyn-analyzers (#71128) [main] Update dependencies from dotnet/runtime dnceng/internal/dotnet-optimization dotnet/icu dotnet/xharness dotnet/emsdk dotnet/roslyn-analyzers
-
由 Eirik Tsarpalis 提交于
* Move IsCalendarDateOnly field to the end of the struct. * Revert "Move IsCalendarDateOnly field to the end of the struct." This reverts commit 217740ae352c14c3245f6cb01c67e9c78aa2fbd5. * Apply Auto layout to large internal structs in STJ
-
由 Stephen Toub 提交于
Also fixes the new Count methods to behave correctly for RightToLeft.
-
- 27 6月, 2022 4 次提交
-
-
由 Andy Ayers 提交于
Fixes #71217.
-
由 dotnet-maestro[bot] 提交于
Co-authored-by: Ndotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
-
由 Jakob Botsch Nielsen 提交于
We do not need a signed cast if we know the sign bit from a previous unsigned cast.
-
由 SingleAccretion 提交于
* LowerPutArgStk -> LowerPutArgStkOrSplit * Support "PUTARG_SPLIT(STRUCT LCL_VAR/LCL_FLD)" on ARM/64
-