Skip to content

Commit

Permalink
Merge branch 'main' into spInterruptTest
Browse files Browse the repository at this point in the history
  • Loading branch information
VSadov authored Mar 9, 2024
2 parents fd44956 + 6ebc8bd commit 11415fb
Show file tree
Hide file tree
Showing 155 changed files with 2,339 additions and 979 deletions.
34 changes: 17 additions & 17 deletions docs/area-owners.md
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ Note: Editing this file doesn't update the mapping used by `@msftbot` for area-s
| area-System.Threading.Channels | @ericstj | @dotnet/area-system-threading-channels | Consultants: @stephentoub |
| area-System.Threading.RateLimiting | @rafikiassumani-msft | @BrennanConroy @halter73 | |
| area-System.Threading.Tasks | @ericstj | @dotnet/area-system-threading-tasks | Consultants: @stephentoub |
| area-System.Transactions | @sammonort | @roji | |
| area-System.Transactions | @sammonort | @roji | |
| area-System.Xml | @jeffhandley | @dotnet/area-system-xml | |
| area-TieredCompilation-coreclr | @mangod9 | @kouvel | |
| area-Tools-ILLink | @agocke | @dotnet/illink | |
Expand All @@ -162,16 +162,16 @@ Note: Editing this file doesn't update the mapping used by `@msftbot` for area-s
> dedicated OS lead/owner, rather ownership falls back to the `area-*` label. However,
> Windows is a supported operating system of course.
| Operating System | Lead | Owners (area experts to tag in PRs and issues) | Description |
|------------------|---------------|---------------------------------------------------------------------|-----------------|
| os-android | @vitek-karas | @akoeplinger | |
| os-freebsd | | @wfurt @Thefrank @sec | |
| os-maccatalyst | @vitek-karas | @kotlarmilos | |
| os-ios | @vitek-karas | @vargaz, @kotlarmilos | |
| os-tizen | @gbalykov | @hjleee, @wscho77, @clamp03, @JongHeonChoi, @t-mustafin, @viewizard | |
| os-tvos | @vitek-karas | @vargaz, @kotlarmilos | |
| os-wasi | @lewing | @pavelsavara | |
| os-browser | @lewing | @pavelsavara | |
| Operating System | Lead | Owners (area experts to tag in PRs and issues) | Description |
|------------------|---------------|----------------------------------------------------|-----------------|
| os-android | @vitek-karas | @akoeplinger | |
| os-freebsd | | @wfurt @Thefrank @sec | |
| os-maccatalyst | @vitek-karas | @kotlarmilos | |
| os-ios | @vitek-karas | @vargaz, @kotlarmilos | |
| os-tizen | @gbalykov | @dotnet/samsung | |
| os-tvos | @vitek-karas | @vargaz, @kotlarmilos | |
| os-wasi | @lewing | @pavelsavara | |
| os-browser | @lewing | @pavelsavara | |

## Architectures

Expand All @@ -180,12 +180,12 @@ Note: Editing this file doesn't update the mapping used by `@msftbot` for area-s
> [!NOTE]
> Ownership isn't the same as supported. See [operating systems](#operating-systems) for details.
| Architecture | Lead | Owners (area experts to tag in PRs and issues) | Description |
|------------------|---------------|---------------------------------------------------------------------|--------------|
| arch-loongarch64 | @shushanhf | @LuckyXu-HF | |
| arch-riscv | @gbalykov | @hjleee, @wscho77, @clamp03, @JongHeonChoi, @t-mustafin, @viewizard | |
| arch-s390x | @uweigand | @uweigand | |
| arch-wasm | @lewing | @lewing, @pavelsavara | |
| Architecture | Lead | Owners (area experts to tag in PRs and issues) | Description |
|------------------|---------------|----------------------------------------------------|-----------------|
| arch-loongarch64 | @shushanhf | @LuckyXu-HF | |
| arch-riscv | @gbalykov | @dotnet/samsung | |
| arch-s390x | @uweigand | @uweigand | |
| arch-wasm | @lewing | @lewing, @pavelsavara | |

## Community Triagers

Expand Down
1 change: 1 addition & 0 deletions docs/project/list-of-diagnostics.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@ The PR that reveals the implementation of the `<IncludeInternalObsoleteAttribute
| __`SYSLIB0051`__ | This API supports obsolete formatter-based serialization. It should not be called or extended by application code. |
| __`SYSLIB0052`__ | This API supports obsolete mechanisms for Regex extensibility. It is not supported. |
| __`SYSLIB0053`__ | AesGcm should indicate the required tag size for encryption and decryption. Use a constructor that accepts the tag size. |
| __`SYSLIB0054`__ | Thread.VolatileRead and Thread.VolatileWrite are obsolete. Use Volatile.Read or Volatile.Write respectively instead. |

## Analyzer Warnings

Expand Down
1 change: 1 addition & 0 deletions docs/project/public-signing.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Known issues when debugging and testing public signed assemblies on .NET Framewo
- You will not be able to load the assembly in an AppDomain where shadow copying is turned on.
- You will not be able to load the assembly in a partially trusted AppDomain
- You will not be able to pre-compile ASP.NET applications
- You may not be able to load the assembly if the `app.config` file specifies `<configuration>`/`<runtime>`/`<NetFx40_LegacySecurityPolicy enabled="true" />`

The `corflags.exe` tool that ships with the .NET Framework SDK can show whether a binary is delay-signed or strong-named. For a delay-signed assembly it may show:

Expand Down
8 changes: 4 additions & 4 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -404,13 +404,13 @@
<Uri>https://github.com/dotnet/roslyn</Uri>
<Sha>77372c66fd54927312b5b0a2e399e192f74445c9</Sha>
</Dependency>
<Dependency Name="Microsoft.CodeAnalysis.Analyzers" Version="3.11.0-beta1.24155.1">
<Dependency Name="Microsoft.CodeAnalysis.Analyzers" Version="3.11.0-beta1.24156.1">
<Uri>https://github.com/dotnet/roslyn-analyzers</Uri>
<Sha>628d239421a3ae54464c60901fd9b831b3f01efa</Sha>
<Sha>7b1f39d7b8bd81d003898c49d0320682b6f06c54</Sha>
</Dependency>
<Dependency Name="Microsoft.CodeAnalysis.NetAnalyzers" Version="9.0.0-preview.24155.1">
<Dependency Name="Microsoft.CodeAnalysis.NetAnalyzers" Version="9.0.0-preview.24156.1">
<Uri>https://github.com/dotnet/roslyn-analyzers</Uri>
<Sha>628d239421a3ae54464c60901fd9b831b3f01efa</Sha>
<Sha>7b1f39d7b8bd81d003898c49d0320682b6f06c54</Sha>
</Dependency>
<!-- Intermediate is necessary for source build. -->
<Dependency Name="Microsoft.SourceBuild.Intermediate.roslyn" Version="4.10.0-2.24114.13">
Expand Down
4 changes: 2 additions & 2 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@
</ItemGroup>
<PropertyGroup>
<!-- dotnet/roslyn-analyzers dependencies -->
<MicrosoftCodeAnalysisAnalyzersVersion>3.11.0-beta1.24155.1</MicrosoftCodeAnalysisAnalyzersVersion>
<MicrosoftCodeAnalysisNetAnalyzersVersion>9.0.0-preview.24155.1</MicrosoftCodeAnalysisNetAnalyzersVersion>
<MicrosoftCodeAnalysisAnalyzersVersion>3.11.0-beta1.24156.1</MicrosoftCodeAnalysisAnalyzersVersion>
<MicrosoftCodeAnalysisNetAnalyzersVersion>9.0.0-preview.24156.1</MicrosoftCodeAnalysisNetAnalyzersVersion>
<!-- dotnet/roslyn dependencies -->
<!--
These versions should not be used by any project that contributes to the design-time experience in VS, such as an analyzer, code-fix, or generator assembly.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<EnableDefaultItems>false</EnableDefaultItems>
Expand Down Expand Up @@ -225,7 +225,6 @@
<Compile Include="$(BclSourcesRoot)\System\Runtime\InteropServices\NativeLibrary.CoreCLR.cs" />
<Compile Include="$(BclSourcesRoot)\System\Runtime\Intrinsics\X86\X86Base.CoreCLR.cs" />
<Compile Include="$(BclSourcesRoot)\System\Runtime\Loader\AssemblyLoadContext.CoreCLR.cs" />
<Compile Include="$(BclSourcesRoot)\System\Runtime\Versioning\CompatibilitySwitch.cs" />
<Compile Include="$(BclSourcesRoot)\System\RuntimeArgumentHandle.cs" />
<Compile Include="$(BclSourcesRoot)\System\RuntimeHandles.cs" />
<Compile Include="$(BclSourcesRoot)\System\RuntimeType.ActivatorCache.cs" />
Expand Down

This file was deleted.

1 change: 0 additions & 1 deletion src/coreclr/crossgen-corelib.proj
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@
<PropertyGroup>
<BuildDll>true</BuildDll>
<BuildDll Condition="'$(TargetOS)' == 'netbsd' or '$(TargetOS)' == 'illumos' or '$(TargetOS)' == 'solaris' or '$(TargetOS)' == 'haiku'">false</BuildDll>
<BuildDll Condition="'$(TargetArchitecture)' == 'riscv64'">false</BuildDll>

<BuildPdb>false</BuildPdb>
<BuildPdb Condition="$(BuildDll) and '$(OS)' == 'Windows_NT' and '$(TargetOS)' == 'windows'">true</BuildPdb>
Expand Down
22 changes: 22 additions & 0 deletions src/coreclr/jit/codegenarm64test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6006,6 +6006,28 @@ void CodeGen::genArm64EmitterUnitTestsSve()
theEmitter->emitIns_R_R_F(INS_sve_fmov, EA_SCALABLE, REG_V10, REG_P11, 0.5,
INS_OPTS_SCALABLE_D); // FMOV <Zd>.<T>, <Pg>/M, #<const>

// IF_SVE_CC_2A
theEmitter->emitIns_R_R(INS_sve_insr, EA_SCALABLE, REG_V0, REG_V13,
INS_OPTS_SCALABLE_B); // INSR <Zdn>.<T>, <V><m>
theEmitter->emitIns_R_R(INS_sve_insr, EA_SCALABLE, REG_V29, REG_V0,
INS_OPTS_SCALABLE_H); // INSR <Zdn>.<T>, <V><m>
theEmitter->emitIns_R_R(INS_sve_insr, EA_SCALABLE, REG_V4, REG_V15,
INS_OPTS_SCALABLE_S); // INSR <Zdn>.<T>, <V><m>
theEmitter->emitIns_R_R(INS_sve_insr, EA_SCALABLE, REG_V8, REG_V2,
INS_OPTS_SCALABLE_D); // INSR <Zdn>.<T>, <V><m>

// IF_SVE_CD_2A
theEmitter->emitIns_R_R(INS_sve_insr, EA_SCALABLE, REG_V4, REG_R23,
INS_OPTS_SCALABLE_B); // INSR <Zdn>.<T>, <R><m>
theEmitter->emitIns_R_R(INS_sve_insr, EA_SCALABLE, REG_V11, REG_R1,
INS_OPTS_SCALABLE_H); // INSR <Zdn>.<T>, <R><m>
theEmitter->emitIns_R_R(INS_sve_insr, EA_SCALABLE, REG_V14, REG_R9,
INS_OPTS_SCALABLE_S); // INSR <Zdn>.<T>, <R><m>
theEmitter->emitIns_R_R(INS_sve_insr, EA_SCALABLE, REG_V19, REG_R0,
INS_OPTS_SCALABLE_D); // INSR <Zdn>.<T>, <R><m>
theEmitter->emitIns_R_R(INS_sve_insr, EA_SCALABLE, REG_V29, REG_ZR,
INS_OPTS_SCALABLE_D); // INSR <Zdn>.<T>, <R><m>

// IF_SVE_CI_3A
theEmitter->emitIns_R_R_R(INS_sve_trn1, EA_SCALABLE, REG_P1, REG_P3, REG_P4,
INS_OPTS_SCALABLE_B); // TRN1 <Pd>.<T>, <Pn>.<T>, <Pm>.<T>
Expand Down
11 changes: 0 additions & 11 deletions src/coreclr/jit/codegenarmarch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3374,17 +3374,6 @@ void CodeGen::genCall(GenTreeCall* call)
genDefineTempLabel(genCreateTempLabel());
}

#ifdef SWIFT_SUPPORT
// Clear the Swift error register before calling a Swift method,
// so we can check if it set the error register after returning.
// (Flag is only set if we know we need to check the error register)
if ((call->gtCallMoreFlags & GTF_CALL_M_SWIFT_ERROR_HANDLING) != 0)
{
assert(call->unmgdCallConv == CorInfoCallConvExtension::Swift);
instGen_Set_Reg_To_Zero(EA_PTRSIZE, REG_SWIFT_ERROR);
}
#endif // SWIFT_SUPPORT

genCallInstruction(call);

genDefinePendingCallLabel(call);
Expand Down
8 changes: 8 additions & 0 deletions src/coreclr/jit/codegencommon.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3795,6 +3795,7 @@ void CodeGen::genFnPrologCalleeRegArgs(regNumber xtraReg, bool* pXtraRegClobbere

regNumber begRegNum = genMapRegArgNumToRegNum(begReg, destMemType);
GetEmitter()->emitIns_Mov(insCopy, size, xtraReg, begRegNum, /* canSkip */ false);
assert(!genIsValidIntReg(xtraReg) || !genIsValidFloatReg(begRegNum));

regSet.verifyRegUsed(xtraReg);

Expand All @@ -3809,6 +3810,7 @@ void CodeGen::genFnPrologCalleeRegArgs(regNumber xtraReg, bool* pXtraRegClobbere
regNumber srcRegNum = genMapRegArgNumToRegNum(srcReg, destMemType);

GetEmitter()->emitIns_Mov(insCopy, size, destRegNum, srcRegNum, /* canSkip */ false);
assert(!genIsValidIntReg(destRegNum) || !genIsValidFloatReg(srcRegNum));

regSet.verifyRegUsed(destRegNum);

Expand Down Expand Up @@ -3860,6 +3862,7 @@ void CodeGen::genFnPrologCalleeRegArgs(regNumber xtraReg, bool* pXtraRegClobbere
regNumber destRegNum = genMapRegArgNumToRegNum(destReg, destMemType);

GetEmitter()->emitIns_Mov(insCopy, size, destRegNum, xtraReg, /* canSkip */ false);
assert(!genIsValidIntReg(destRegNum) || !genIsValidFloatReg(xtraReg));

regSet.verifyRegUsed(destRegNum);
/* mark the beginning register as processed */
Expand Down Expand Up @@ -3934,6 +3937,7 @@ void CodeGen::genFnPrologCalleeRegArgs(regNumber xtraReg, bool* pXtraRegClobbere
// todo -- suppress self move
GetEmitter()->emitIns_R_R_I_I(INS_mov, EA_4BYTE, destRegNum, regNum,
regArgTab[currentArgNum].slot - 1, 0);
assert(!genIsValidIntReg(destRegNum) || !genIsValidFloatReg(regNum));
regArgTab[currentArgNum].processed = true;
regArgMaskLive &= ~genRegMask(regNum);
}
Expand Down Expand Up @@ -4107,6 +4111,7 @@ void CodeGen::genFnPrologCalleeRegArgs(regNumber xtraReg, bool* pXtraRegClobbere
}
#endif
inst_Mov(destMemType, destRegNum, regNum, /* canSkip */ false, size);
assert(!genIsValidIntReg(destRegNum) || !genIsValidFloatReg(regNum));
}

/* mark the argument as processed */
Expand All @@ -4132,6 +4137,7 @@ void CodeGen::genFnPrologCalleeRegArgs(regNumber xtraReg, bool* pXtraRegClobbere
// Emit a shufpd with a 0 immediate, which preserves the 0th element of the dest reg
// and moves the 0th element of the src reg into the 1st element of the dest reg.
GetEmitter()->emitIns_R_R_I(INS_shufpd, emitActualTypeSize(varRegType), destRegNum, nextRegNum, 0);
assert(!genIsValidIntReg(destRegNum) || !genIsValidFloatReg(nextRegNum));
// Set destRegNum to regNum so that we skip the setting of the register below,
// but mark argNum as processed and clear regNum from the live mask.
destRegNum = regNum;
Expand Down Expand Up @@ -4159,6 +4165,7 @@ void CodeGen::genFnPrologCalleeRegArgs(regNumber xtraReg, bool* pXtraRegClobbere
noway_assert(genIsValidFloatReg(nextRegNum));
noway_assert(genIsValidFloatReg(destRegNum));
GetEmitter()->emitIns_Mov(INS_mov, EA_8BYTE, destRegNum, nextRegNum, /* canSkip */ false);
assert(!genIsValidIntReg(destRegNum) || !genIsValidFloatReg(nextRegNum));
}
}
#if defined(TARGET_ARM64) && defined(FEATURE_SIMD)
Expand All @@ -4179,6 +4186,7 @@ void CodeGen::genFnPrologCalleeRegArgs(regNumber xtraReg, bool* pXtraRegClobbere
noway_assert(genIsValidFloatReg(nextRegNum));
noway_assert(genIsValidFloatReg(destRegNum));
GetEmitter()->emitIns_R_R_I_I(INS_mov, EA_4BYTE, destRegNum, nextRegNum, i, 0);
assert(!genIsValidIntReg(destRegNum) || !genIsValidFloatReg(nextRegNum));
}
}
#endif // defined(TARGET_ARM64) && defined(FEATURE_SIMD)
Expand Down
11 changes: 0 additions & 11 deletions src/coreclr/jit/codegenxarch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6014,17 +6014,6 @@ void CodeGen::genCall(GenTreeCall* call)
instGen(INS_vzeroupper);
}

#ifdef SWIFT_SUPPORT
// Clear the Swift error register before calling a Swift method,
// so we can check if it set the error register after returning.
// (Flag is only set if we know we need to check the error register)
if ((call->gtCallMoreFlags & GTF_CALL_M_SWIFT_ERROR_HANDLING) != 0)
{
assert(call->unmgdCallConv == CorInfoCallConvExtension::Swift);
instGen_Set_Reg_To_Zero(EA_PTRSIZE, REG_SWIFT_ERROR);
}
#endif // SWIFT_SUPPORT

genCallInstruction(call X86_ARG(stackArgBytes));

genDefinePendingCallLabel(call);
Expand Down
Loading

0 comments on commit 11415fb

Please sign in to comment.