1. 09 6月, 2020 1 次提交
  2. 07 6月, 2020 1 次提交
  3. 03 6月, 2020 2 次提交
    • J
      Alternate function to set valuetypes for ref-ness · f6fffe82
      Joe Valenzuela 提交于
      Same method that ldloc.s uses, which incorporates the byref test.
      f6fffe82
    • J
      Fix for ldloc/ldfld of ref to valuetype · 0a57e043
      Joe Valenzuela 提交于
      When we have the following sequence:
      
          ldloc n
          ldfld valuetype [Unity.Mathematics]Unity.Mathematics.int2 Foo::bar
      
      and local n is a reference to value, when walking the instructions in
      mono_method_to_ir, we generally try to avoid loading a whole value
      type just to load one of the fields.  I believe this is an
      optimization.
      
      The test here is not quite complete, though, as we have ref valuetypes
      where the object stored at the location is actually an address, in
      which case we still need to treat it as we would a normal reference.
      
      This optimization isn't present in the ldloc.n coded forms and is
      written in a slightly more robust way in ldloc.s, so no changes are
      necessary there.
      
      As an alternative to this commit, we might adopt the ldloc.s test for
      ldloc as well, or merge in
      https://github.com/mono/mono/commit/29428d951637ff85b593ea5c9cc5d5236579906d/mono/mini/method-to-ir.c
      from master which encapsulates much the same intent.
      0a57e043
  4. 19 5月, 2020 1 次提交
  5. 14 5月, 2020 1 次提交
  6. 07 5月, 2020 1 次提交
  7. 06 5月, 2020 4 次提交
  8. 13 4月, 2020 3 次提交
  9. 09 4月, 2020 1 次提交
    • J
      Add ETW enabled checks to ConcurrentBag implementation (case 1230447) · ed45a7b9
      Josh Peterson 提交于
      This change modifies the `ConcurrentBag` implementation from corefx.
      Since we cannot update the corefx submodule, make a copy of the
      ConcurrentBag.cs file, fix the issue, and point the build at this copy.
      
      The change is in the `TrySteal` method. It makes calls on the
      `CDSCollectionETWBCLProvider`, which is removed by the manged linker
      by default. Those calls should be wrapped in a
      `CDSCollectionETWBCLProvider.Log.IsEnabled()` if block, so the linker
      can understand to not make the calls.
      ed45a7b9
  10. 26 3月, 2020 2 次提交
    • J
      Do not access unloading domains in debugger (case 1013579) · 25cf110b
      Jonathan Chambers 提交于
      There was a race where a domain was being unloaded while debugger would access it. A domain was only removed from the 'appdomains_list' as a very last step. The domain was already invalid to access at this point (locks freed for example).
      
      Worse, images would be unloaded if only referenced by that domain. All places the debugger iterates domains hold the loader lock. The loader lock is acquired by the domain unloading process, so as long as a domain is not unloading when we access it inside of the loader lock we are safe.
      25cf110b
    • J
      Optimize Enum.HasFlags (). · c7e0dc11
      Jonathan Chambers 提交于
      Manually applied cherry-pick of https://github.com/mono/mono/pull/8428
      
      Unity: Avoid allocation in Enum.HasFlags (case 1211643)
      
      * [jit] Decompose some CEE_BOX opcodes later to allow more optimizations.
      
      Optimize a code sequence emitted for Enum.HasFlag () by newer csc versions.
      Also mark the temporary bblocks used by decompose_vtypes () as out-of-line if
      the bblock under processing is out-of-line. Mark the domainvar as volatile to avoid
      optimizing it away since references to it can now be generated later from the
      decomposition of OP_BOX.
      
      * [jit] Check that the enum types are the same.
      
      * [jit] Fix support for generic enums.
      
      * [jit] Disable the optimization with 64 bit enums on 32 bit platforms.
      c7e0dc11
  11. 25 3月, 2020 1 次提交
  12. 22 3月, 2020 1 次提交
  13. 08 3月, 2020 1 次提交
  14. 05 3月, 2020 3 次提交
  15. 04 3月, 2020 3 次提交
  16. 26 2月, 2020 2 次提交
  17. 12 2月, 2020 1 次提交
  18. 04 2月, 2020 1 次提交
    • T
      [Debugger] Fix crash when there is a generic struct with a field that is an enumerator. (#12368) · 7363a505
      Thays Grazia 提交于
      * [Debugger]  Debugger crashes when inside a class, there is an internal struct, with a field that is an enumerator.
      files.myBucket.GetEnumerator().get_Current().Key
      Fixes #10735
      
      * [Debugger] Debugger crashes when there is a generic struct with a field that is an enumerator.
      Example: files.get_Current().Key
      A unit test that reproduces this crash was added too.
      Fixes #10735
      
      * Removing the extra space.
      
      * UnityAlex cherry-pick modification: Removed tests
      7363a505
  19. 01 2月, 2020 1 次提交
  20. 24 1月, 2020 1 次提交
  21. 16 12月, 2019 1 次提交
  22. 04 12月, 2019 1 次提交
  23. 05 11月, 2019 1 次提交
  24. 04 11月, 2019 1 次提交
  25. 01 11月, 2019 2 次提交
  26. 28 10月, 2019 1 次提交
  27. 22 10月, 2019 1 次提交