Skip to content

[X86] Remove lowerToAddSubOrFMAddSub and update test coverage #144489

Open
@RKSimon

Description

@RKSimon

lowerToAddSubOrFMAddSub is a x86 DAG lowering that tries to vectorize fadd/fsub code into ADDSUB + VFMADDSUB/VFMSUBADD vector instructions but SLP/VectorCombine should now be vectorising these patterns leaving the backend code superfluous.

Very similar to #143000

So, this task involves:

  • Disable lowerToAddSubOrFMAddSub
  • Review all CodeGen/X86 test changes
  • Convert the changed CodeGen/X86 tests into similar PhaseOrdering/X86 tests to track the vectorized IR (for the various SSE/AVX/FMA3/FMA4 targets)
  • Replace the CodeGen/X86 test coverage with the real vectorized IR
  • Remove lowerToAddSubOrFMAddSub and all its support methods
  • Handle any CodeGen regressions (maybe a cost model, transform or backend fix)

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions