Skip to content

[X86] CVTTPD2DQ/CVTTPS2DQ intrinsics must not map to ISD::FP_TO_SINT etc. #37099

@RKSimon

Description

@RKSimon
Bugzilla Link 37751
Resolution FIXED
Resolved on Jun 14, 2018 07:08
Version trunk
OS Windows NT
Blocks #37146
CC @adibiagio,@topperc,@efriedma-quic,@filcab,@gregbedwell,@rotateright,@wjristow
Fixed by commit(s) r334685

Extended Description

Now that we have FP_TO_*INT combines in DAGCombine (rL330437 for rounding etc.), we can no longer safely map x86 f2i intrinsics to generic types:

X86_INTRINSIC_DATA(avx_cvtt_ps2dq_256,INTR_TYPE_1OP, ISD::FP_TO_SINT, 0)

as this will lose the intrinsics' special case handling for out of range values.

All these values need mapping to the X86ISD equivalents (CVTTP2SI/CVTTP2UI) instead and suitable constant folding support adding so we don't lose any functionality.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions