HomePhabricator

[CostModel][X86] Adjust fp<->int vXi32 AVX1+ costs based on llvm-mca reports

Authored by RKSimon on Jun 30 2021, 7:01 AM.

Description

[CostModel][X86] Adjust fp<->int vXi32 AVX1+ costs based on llvm-mca reports

Based off the worse case numbers generated by D103695, the AVX1/2/512 sitofp/uitofp/fptosi/fptoui costs were higher than necessary (based off instruction counts instead of actual throughput).

The SSE costs still need further fixes, but I hit an issue with the order in which SSE costs are checked - we need to check CUSTOM costs (with non-legal types) first, and then fallback to LEGALIZED types. I'm looking at this now, and this should let us start thinning out a lot of the duplicates in the costs tables.

Then we can finally start work on vXi64 / vXi16 / vXi8 / vXi1 integers, which should let us look at sub-128-bit vectorization (D103925).

Details

Committed
RKSimonJun 30 2021, 7:23 AM
Parents
rGdb86e5c91477: Revert "[Coroutine] Add statistics for the number of elided coroutine"
Branches
Unknown
Tags
Unknown