Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
3a130c8
unblock long xplat intrinsics on x86
saucecontrol Feb 21, 2025
7f220c2
tidying
saucecontrol Feb 21, 2025
78dc31d
tidying2
saucecontrol Feb 21, 2025
7330c3e
Merge remote-tracking branch 'upstream/main' into createscalar64
saucecontrol Feb 22, 2025
69065ee
remove CreateScalarUnsafe opt for small loads
saucecontrol Feb 22, 2025
86ebdae
skip more redundant casts for CreateScalar of small types
saucecontrol Feb 22, 2025
cdb0910
use temp reg for CreateScalar float SSE fallback
saucecontrol Feb 22, 2025
5d6fb3f
formatting patch
saucecontrol Feb 22, 2025
bb03516
simplify storeind containment of ToScalar
saucecontrol Feb 23, 2025
cba4ab0
don't use temp reg for CreateScalar float SSE fallback
saucecontrol Feb 23, 2025
1f97bd9
Merge remote-tracking branch 'upstream/main' into createscalar64
saucecontrol Feb 23, 2025
71145ab
Merge remote-tracking branch 'upstream/main' into createscalar64
saucecontrol Feb 24, 2025
42a6ab8
skip cast on other memory loads
saucecontrol Feb 24, 2025
1c98e23
use proper containment check
saucecontrol Feb 24, 2025
c80c566
Merge remote-tracking branch 'upstream/main' into createscalar64
saucecontrol Feb 25, 2025
fb2cf30
Merge remote-tracking branch 'upstream/main' into createscalar64
saucecontrol Feb 26, 2025
3a76030
Merge remote-tracking branch 'upstream/main' into createscalar64
saucecontrol Mar 11, 2025
af01862
add more validation, remove CreateSequence restriction
saucecontrol Mar 13, 2025
811e16e
Merge remote-tracking branch 'upstream/main' into createscalar64
saucecontrol Mar 19, 2025
aebbf68
use appropriate helpers for decomposing ToScalar
saucecontrol Mar 19, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
skip cast on other memory loads
  • Loading branch information
saucecontrol committed Feb 24, 2025
commit 42a6ab85e0c0541598364486f629299db8951c64
4 changes: 2 additions & 2 deletions src/coreclr/jit/lowerxarch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4087,7 +4087,7 @@ GenTree* Lowering::LowerHWIntrinsicCreate(GenTreeHWIntrinsic* node)
// If the base type is signed, that cast will be sign-extending, but we need zero extension,
// so we can simply retype the cast to the unsigned type of the same size.
//
// It's also possible we have an indir of the base type:
// It's also possible we have a memory load of the base type:
// * IND short
// We can likewise change the type of the indir to force zero extension on load.
//
Expand All @@ -4103,7 +4103,7 @@ GenTree* Lowering::LowerHWIntrinsicCreate(GenTreeHWIntrinsic* node)
assert(op1->TypeIs(TYP_INT) && (genTypeSize(op1->CastToType()) == genTypeSize(simdBaseType)));
op1->AsCast()->gtCastType = unsignedType;
}
else if (op1->OperIs(GT_IND))
else if (op1->OperIs(GT_IND, GT_LCL_FLD))
{
assert(genTypeSize(op1) == genTypeSize(simdBaseType));
op1->gtType = unsignedType;
Expand Down