1. 22 4月, 2022 13 次提交
    • J
      d0916fbd
    • C
      Add System.Formats.Tar assembly to NetCoreAppLibrary.props (#68343) · f00615cf
      Carlos Sanchez 提交于
      * Add assembly to NetCoreAppLibrary.props
      
      * Remove <PackageDescription> from src csproj since it is not OOB.
      
      * Add NetCoreAppCurrent to src csproj TargetFrameworks
      
      * Additional src csproj changes.
      Co-authored-by: Ncarlossanlop <carlossanlop@users.noreply.github.com>
      f00615cf
    • J
      Fix locking around m_LoaderAllocatorReferences iteration (#68336) · 233c40e0
      Jan Vorlicek 提交于
      The iteration that marks loader allocators in LoaderAllocator::Mark()
      was not being called under an appropriate lock, which lead to a rare and
      hard to reproduce race condition and a crash in the
      LoaderAllocator::Mark(). The issue happened when the
      m_LoaderAllocatorReferences.Begin() returned an iterator at the time the
      m_LoaderAllocatorReferences were empty and another thread has written
      something into those references before the
      m_LoaderAllocatorReferences.End() was called. The iter was then
      evaluated as not equal to the End and the iter was getting dereferenced.
      Since the iterator had m_table set to NULL, the dereferencing caused
      crash.
      233c40e0
    • S
      Enable new CA1311 (ToLower/Upper culture) and CA1852 (seal internal/private types) rules (#68268) · 46871b85
      Stephen Toub 提交于
      * Enable new CA1311 (ToLower/Upper culture) and CA1852 (seal internal/private types)
      
      CA1311 flagged a few issues, all addressed by using ToLowerInvariant/ToUpperInvariant.
      
      CA1852 flagged a bunch that previous cleanups around sealing types missed or that are new since.  Sealing types then highlighted places where protected or virtual members were being exposed unnecessarily, so those were fixed, too.  Adding sealed to things also highlighted some discrepancies in the order of "unsafe sealed" keywords, where the vast majority in the repo were "sealed unsafe", so I fixed the few that weren't.
      
      * Address PR feedback and fix more CI failures
      
      * Fix unit test build error
      46871b85
    • A
      perf: Fix issues caused by a shared `dotnet` in helix correlation payload directory (#67792) · e09903f9
      Ankit Jain 提交于
      * perf: Don't build in the payload directory on helix
      
      A copy of the `performance` repo is sent as payload to helix. And then
      we build from the same directory. But this is shared by the whole job.
      And it gets uploaded only once. So, all the workitems on that machine
      would share that directory.
      
      This can cause issues like if a workitem has to be retried by helix,
      then it will end up building incrementally, because it is using the same
      artifacts from the first build. This case was hit when some wasm/aot
      workitems were retries.
      
      Solution: copy the diretory to `$HELIX_WORKITEM_ROOT/performance` before
      building, since `$HELIX_WORKITEM_ROOT` is private to a workitem.
      
      Thanks to @premun for the suggestion.
      
      * blazor_perf.proj: Pass --readonly-dotnet so the shared dotnet installation is not modified
      
      * blazor_scenarios: pass --readonly-dotnet to post.py scripts too
      e09903f9
    • J
      4198a8af
    • A
      Don't use _ASSERTE in runtime tests (#68299) · 882eb6c9
      Aleksey Kliger (λgeek) 提交于
      In debug configurations, use of `_ASSERTE` requires the `PAL_frpintf` function and linking with the `coreclrpal` static library.
      
      Instead just use `assert()` from `<assert.h>`
      
      Fixes https://github.com/dotnet/runtime/issues/68279
      
      * Don't use _ASSERTE in runtime tests
      
         That macro requires linking the coreclrpal static library, which the runtime tests don't currently do.
      
      * use an absolute path for binary_dir
      882eb6c9
    • T
      edb9c498
    • E
    • S
      Remove usage of !! from dotnet/runtime (#68178) · 215b39ab
      Stephen Toub 提交于
      * Remove usage of !! from dotnet/runtime
      
      - Use ArgumentNullException.ThrowIfNull instead where possible.  It's only usable for projects that only target .NET 6+, and it can't be used in places like this(...) or base(...).
      - In other cases, if the project already has a ThrowHelper, augment it for null as needed and use that.
      - For most of the extensions projects, add a ThrowHelper.ThrowIfNull that replicates ArgumentNullException.ThrowIfNull.
      - For everything else, just use "throw new".
      
      * Address PR feedback
      
      * Address PR feedback
      
      * Remove false positives from searches
      
      * Address PR feedback
      215b39ab
    • A
      Add missing Android/tvOS optimization for OperatingSystem.IsOSPlatform() (#68313) · ed04fef3
      Alexander Köplinger 提交于
      We were still calling into the PAL to get the platform name string, but we can just hardcode the result like we do on other platforms.
      ed04fef3
    • Q
      [LoongArch64] coreclr-vm directory (#62885) · febeba30
      Qiao Pengcheng 提交于
      * Part6-2: -add the coreclr-vm directory for LoongArch64. (#59561)
      
      Co-authored-by: Loongson's .NET-teams
      
      * [LoongArch64] revert the syncblk.cpp.
      
      * [LoongArch64] delete some unused codes.
      
      * [LoongArch64] add vm/CMakeLists.txt from #62889.
      
      * [LoongArch64] add related files from #62886 and #62893.
      
      * [LoongArch64] moved vm/jitinterface.cpp from #62893.
      moved inc/corinfo.h from #6288.
      
      * [LoongArch64] run the file `src/coreclr/tools/Common/JitInterface/ThunkGenerator/gen.sh`
      and merge the patch from #62893.
      
      * [LoongArch64] revert vm/ceeload.h.
      amend the `ToolBox/superpmi/superpmi-shared/agnostic.h`
      
      * [LoongArch64] add empty interfaces within `CorInfoImpl.cs`.
      
      * [LoongArch64] Fix the compiling error on Windows.
      
      * [LoongArch64] Fix the compiling error for memory unaligned m_currentByteStackIndex.
      
      * [LoongArch64] Delete the !TARGET_LOONGARCH64 for m_currentByteStackIndex.
      
      * [LoongArch64] move ToolBox from #62886.
      
      * [LoongArch64] amend the args when needs unsigned extending within CallTargetWorker.
      
      * [LoongArch64] add bool type for args' unsigned extention.
      
      * [LoongArch64] adding char type for args' unsigned extention.
      Also rename `TARGET_LOONGARCH64` to `UNIX_LOONGARCH64_ABI` within ABI.
      
      * [LoongArch64] amend renaming `TARGET_LOONGARCH64` to `UNIX_LOONGARCH64_ABI` within ABI.
      
      * [LoongArch64] remove the JIT/EE interface to #62893.
      
      * [LoongArch64] revert the rename `TARGET_LOONGARCH64` to `UNIX_LOONGARCH64_ABI`.
      Also add unsigned extend for CHAR type.
      
      * [LoongArch64] refactor the `ArgDestination and ArgLocDesc`.
      
      * [LoongArch64] rename the `m_flag` and `getFieldTypeByHnd`.
      
      * [LoongArch64] add `NATIVE_SYMBOL_READER_DLL` for compiling error.
      
      * [LoongArch64] update the version of the `LICENSE description`.
      
      * [LoongArch64] keep same with the comment in `jit/targetloongarch64.h`
      
      * [LoongArch64] amend the code for reviewing.
      
      * [LoongArch64] refactor LoongArch64-ABI within `vm`,
      and also amend some code for review.
      
      * [LoongArch64] delete unused codes.
      
      * [LoongArch64] merge main for #65869.
      
      * [LoongArch64] amend the format for reviewing.
      
      * [LoongArch64] delete some unused code for reviewing.
      
      * [LoongArch64] amend code for CR feedback @jkotas @janvorli
      
      * [LoongArch64] add class type for LoongArch64-ABI.
      
      * [LoongArch64] Amend the LoongArch64's ABI
      after merged `MethodTable::GetLoongArch64PassStructInRegisterFlags()`
      and `CEEInfo::getLoongArch64PassStructInRegisterFlags()`
      
      * [LoongArch64] Fix the assert error
      when running hello-world within debug-mode after refacting.
      Co-authored-by: Nqiaopengcheng <qiaopengcheng-hf@loongson.cn>
      febeba30
    • C
      Implement Tar APIs (#67883) · 2389815a
      Carlos Sanchez 提交于
      API proposal: https://github.com/dotnet/runtime/issues/65951
      2389815a
  2. 21 4月, 2022 27 次提交