1. 12 12月, 2020 1 次提交
  2. 11 12月, 2020 4 次提交
    • R
      [metadata] Generate type-3 GUIDs for interfaces. (#20499) · d5f338c0
      Rémi Bernon 提交于
      * [metadata] Generate type-3 GUIDs for interfaces.
      
      When they don't provide a fixed GUID already.
      
      Fixing L.A.Noire Launcher not being able to load its ErrorHandler class.
      
      * [System.RuntimeType] Use native same method to query type GUID.
      
      * [cominterop] Factor GUID lookup mechanism with System.RuntimeType.
      
      * [tests] Test that generated Type.GUID match .NET Framework.
      
      * [tests] Test that generated GUID can be used to query COM interface.
      
      * use getters for MonoClass members
      
      * Add mono_md5_ctx_byte_length to get the digest length
      
      Fixes the OSX and iOS builds where we use CommonCrypto
      
      * fix Win32 build
      
      * Don't build icall on netcore
      
      Will need a separate followup PR to add it to RutnimeType in dotnet/runtime
      Co-authored-by: NAleksey Kliger <alklig@microsoft.com>
      d5f338c0
    • E
      Fix a few spelling mistakes · 2f6b4b5e
      eerhardt 提交于
      paramterless => parameterless
      Polymorhic => Polymorphic
      2f6b4b5e
    • J
      Add support for global aggressive-linining optimization. (#20641) · 6968cb28
      Johan Lorensson 提交于
      * Add support for global aggressive-linining optimization.
      
      Currently we do support aggressive inlining per method using attributes.
      This commit adds a new global mono optimization flag that does similar
      thing, but whiout the need to annotate methods. There is still one big
      difference and that is the effect of cost. The new global optimization
      does not override cost evaluation, so if a method is to expensive to
      inline with regards to inline limit, it won't be inlined. In order to
      get the full "forced" inlining. method attributes should still be used.
      
      This new optimization is not default and needs to be enabled using:
      
      --optimize=aggressive-inlining
      
      * Keep default inline limit on none netcore builds.
      6968cb28
    • A
      [reflection] Don't get parameter default values for wrapper methods (#20602) · 685e0eeb
      Aleksey Kliger (λgeek) 提交于
      The lookup assumes that the method came from metadata, which is not the case
      for wrappers.
      685e0eeb
  3. 10 12月, 2020 3 次提交
    • J
      Fix debugger late attach, suspend=n. (#20644) · 12cff32b
      Johan Lorensson 提交于
      Runtime workaround fix for incorrect VM resume when suspend policy none
      is in use. Real fix is in debugger-libs, mono/debugger-libs#264
      but until that lands in VS installer (and tooling has been upgraded to VS2019)
      this workaround will prevent the error to be propagated back to client and
      VM will make sure the correct suspend state is maintained.
      
      Fix also makes sure logging done within debugger engine/agent is not directly
      send to stdout/stderr on platforms where there is no console (or alternative console).
      
      This is done to prevent scenarios where stdout/stderr has been redirected to debug client,
      but logging as part of debugger agent will trigger new messages to redirect,
      flooding the message queue and suspending/resuming the VM for each message.
      12cff32b
    • J
    • I
      Use explicit arithmetic checks in the amd64 watchOS simulator. (#20639) · bcd47915
      imhameed 提交于
      Fixes #20632.
      bcd47915
  4. 09 12月, 2020 7 次提交
  5. 08 12月, 2020 1 次提交
  6. 07 12月, 2020 2 次提交
  7. 05 12月, 2020 1 次提交
    • L
      [Mono] Arrays shouldn't implement linked out generic classes · f74043d3
      lambdageek 提交于
      Don't implement the `IList<T>` and `IReadOnlyList<T>` for array types if those interfaces are linked out.
      Also check for individual methods from the generic interfaces - if the methods aren't used and are linked out, drop them from the array initialization.
      
      Also drop option for pre-.NET 2.0 behavior (in netcore and in mono net 4.x mode)
      
      Related to dotnet/runtime#44859
      f74043d3
  8. 03 12月, 2020 1 次提交
  9. 02 12月, 2020 1 次提交
  10. 28 11月, 2020 1 次提交
  11. 26 11月, 2020 2 次提交
  12. 24 11月, 2020 1 次提交
  13. 23 11月, 2020 1 次提交
  14. 22 11月, 2020 1 次提交
  15. 20 11月, 2020 1 次提交
  16. 19 11月, 2020 5 次提交
  17. 18 11月, 2020 1 次提交
  18. 17 11月, 2020 2 次提交
  19. 14 11月, 2020 1 次提交
  20. 13 11月, 2020 1 次提交
  21. 11 11月, 2020 2 次提交
    • M
    • M
      [mono][jit] Emit profiler enter after jit attach; leave before detach (#20556) · b2bc12b3
      monojenkins 提交于
      profiler enter code (such as mono_trace_enter_method) must not be called before a thread attaches to the runtime - otherwise calls like `mono_domain_get()` will return NULL unexpectedly and then crash.
      When detaching, we should call the profiler leave code before the detach, and suppress it on return.
      
      Simple repro (that relies on pal_signal.c SignalHandlerLoop - which is a background thread from System.Native that calls back into managed when there's a SIGCHLD): compile and run this program with `MONO_ENV_OPTIONS=--trace`
      
      ```csharp
      using System;
      using System.Diagnostics;
      
      namespace Repro
      {
          internal class Program
          {
              private static void Main(string[] args)
              {
                  using (Process myProcess = new Process())
                  {
                          myProcess.StartInfo.UseShellExecute = true;
                          myProcess.StartInfo.FileName = "echo";
                          myProcess.StartInfo.Arguments = "hello from shell";
                          myProcess.StartInfo.CreateNoWindow = true;
                          myProcess.Start();
                          myProcess.WaitForExit();
                  }
                  Console.ReadKey ();
              }
          }
      }
      ```
      Co-authored-by: Nlambdageek <lambdageek@users.noreply.github.com>
      b2bc12b3