dotnet/runtime

Improve APIs for Intel string handling intrinsics

开放

#957 创建于 2018年6月13日

 (14 条评论) (2 个反应) (0 位负责人)C# (5,445 个派生)batch import
arch-x64area-System.Runtime.Intrinsicshelp wanted

仓库指标

星标
 (17,886 个星标)
PR 合并指标
 (平均合并 12天 11小时) (30 天内合并 661 个 PR)

描述

See https://github.com/dotnet/coreclr/pull/17637 for some discussion and context. The fundamental issues revolve around how much of the behavior should be controlled by enums passed into the intrinsic method, versus separating the different behaviors into differently-named intrinsics.

The current API includes both StringComparisonMode (https://github.com/dotnet/corefx/blob/master/src/System.Runtime.Intrinsics/ref/System.Runtime.Intrinsics.cs#L864) and ResultsFlag (https://github.com/dotnet/corefx/blob/master/src/System.Runtime.Intrinsics/ref/System.Runtime.Intrinsics.cs#L875).

Some of the open questions are:

  • Should the ResultsFlag, which determines the comparison results for which a true result is returned, become part of the method name?
  • How should these be named? According to the instruction documentation (e.g. CFlag, as in the current API), or something more descriptive like CompareNonZeroMask?
  • Should these be combined into a single enum or remain separate?

贡献者指南