x[AArch64][GlobalISel] Enable vector support for G_SELECT->G_FMAXIMUM/MINIMUM.
authorAmara Emerson <amara@apple.com>
Mon, 3 Oct 2022 00:46:20 +0000 (01:46 +0100)
committerAmara Emerson <amara@apple.com>
Mon, 3 Oct 2022 20:39:52 +0000 (21:39 +0100)
commit07ccf651b95b3d92904e5d513772ad51567d8334
treeb95cf168ec929b4a8944d93a98c04dacbc6d3a3e
parent54608b40eb5032e5b476f4eef2c5dc79291d8574
x[AArch64][GlobalISel] Enable vector support for G_SELECT->G_FMAXIMUM/MINIMUM.

Vector support seems to work immediately, as long as we run the combine before
legalization (so the vector SELECTs don't get lowered) and the legalizer rules
are there to enable generation.

Differential Revision: https://reviews.llvm.org/D135047
llvm/include/llvm/Target/GlobalISel/Combine.td
llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
llvm/test/CodeGen/AArch64/GlobalISel/legalize-fmaximum.mir
llvm/test/CodeGen/AArch64/GlobalISel/legalize-fminimum.mir
llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-select-to-fminmax.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/GlobalISel/select-to-fmin-fmax.ll [new file with mode: 0644]