diff options
author | Fei Peng <fei.peng@intel.com> | 2018-02-26 13:02:12 -0800 |
---|---|---|
committer | Tanner Gooding <tagoo@outlook.com> | 2018-02-26 19:08:13 -0800 |
commit | e61f7f44f8d115aaf688c3238f0e5d44e40dfb29 (patch) | |
tree | 211179946e23da48df6ffe10ac437454700a798c /src/jit/gtstructs.h | |
parent | ec78ba4a4467fff7ca069a3123788c96eeca2ebc (diff) | |
download | coreclr-e61f7f44f8d115aaf688c3238f0e5d44e40dfb29.tar.gz coreclr-e61f7f44f8d115aaf688c3238f0e5d44e40dfb29.tar.bz2 coreclr-e61f7f44f8d115aaf688c3238f0e5d44e40dfb29.zip |
Update the table-driven framework to support x86 imm-intrinsics.
And add a new range-check IR for x86 imm-intrinsics.
Diffstat (limited to 'src/jit/gtstructs.h')
-rw-r--r-- | src/jit/gtstructs.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/jit/gtstructs.h b/src/jit/gtstructs.h index 6cfb92c98e..0df4e35078 100644 --- a/src/jit/gtstructs.h +++ b/src/jit/gtstructs.h @@ -85,11 +85,15 @@ GTSTRUCT_1(FptrVal , GT_FTN_ADDR) GTSTRUCT_1(Intrinsic , GT_INTRINSIC) GTSTRUCT_1(Index , GT_INDEX) GTSTRUCT_1(IndexAddr , GT_INDEX_ADDR) -#ifdef FEATURE_SIMD +#if defined(FEATURE_HW_INTRINSICS) && defined(FEATURE_SIMD) +GTSTRUCT_3(BoundsChk , GT_ARR_BOUNDS_CHECK, GT_SIMD_CHK, GT_HW_INTRINSIC_CHK) +#elif defined(FEATURE_SIMD) GTSTRUCT_2(BoundsChk , GT_ARR_BOUNDS_CHECK, GT_SIMD_CHK) -#else // !FEATURE_SIMD +#elif defined(FEATURE_HW_INTRINSICS) +GTSTRUCT_2(BoundsChk , GT_ARR_BOUNDS_CHECK, GT_HW_INTRINSIC_CHK) +#else // !FEATURE_SIMD && !FEATURE_HW_INTRINSICS GTSTRUCT_1(BoundsChk , GT_ARR_BOUNDS_CHECK) -#endif // !FEATURE_SIMD +#endif // !FEATURE_SIMD && !FEATURE_HW_INTRINSICS GTSTRUCT_1(ArrLen , GT_ARR_LENGTH) GTSTRUCT_1(ArrElem , GT_ARR_ELEM) GTSTRUCT_1(ArrOffs , GT_ARR_OFFSET) |