[AArch64][GlobalISel] Remove unnecessary fp convert patterns. NFC
We nowadays legalize the fp converts to legal operations earlier, not requiring patterns that select to multiple instructions.
This commit is contained in:
@@ -324,27 +324,6 @@ def : Pat<(f32 (fadd (vector_extract (v2f32 FPR64:$Rn), (i64 0)),
|
||||
(vector_extract (v2f32 FPR64:$Rn), (i64 1)))),
|
||||
(f32 (FADDPv2i32p (v2f32 FPR64:$Rn)))>;
|
||||
|
||||
let Predicates = [HasNEON] in {
|
||||
def : Pat<(v2f64 (sint_to_fp v2i32:$src)),
|
||||
(SCVTFv2f64 (SSHLLv2i32_shift V64:$src, 0))>;
|
||||
def : Pat<(v2f64 (uint_to_fp v2i32:$src)),
|
||||
(UCVTFv2f64 (USHLLv2i32_shift V64:$src, 0))>;
|
||||
def : Pat<(v2f32 (sint_to_fp v2i64:$src)),
|
||||
(FCVTNv2i32 (SCVTFv2f64 V128:$src))>;
|
||||
def : Pat<(v2f32 (uint_to_fp v2i64:$src)),
|
||||
(FCVTNv2i32 (UCVTFv2f64 V128:$src))>;
|
||||
|
||||
def : Pat<(v2i64 (fp_to_sint v2f32:$src)),
|
||||
(FCVTZSv2f64 (FCVTLv2i32 V64:$src))>;
|
||||
def : Pat<(v2i64 (fp_to_uint v2f32:$src)),
|
||||
(FCVTZUv2f64 (FCVTLv2i32 V64:$src))>;
|
||||
def : Pat<(v2i32 (fp_to_sint v2f64:$src)),
|
||||
(XTNv2i32 (FCVTZSv2f64 V128:$src))>;
|
||||
def : Pat<(v2i32 (fp_to_uint v2f64:$src)),
|
||||
(XTNv2i32 (FCVTZUv2f64 V128:$src))>;
|
||||
|
||||
}
|
||||
|
||||
let Predicates = [HasNoLSE] in {
|
||||
def : Pat<(atomic_cmp_swap_i8 GPR64:$addr, GPR32:$desired, GPR32:$new),
|
||||
(CMP_SWAP_8 GPR64:$addr, GPR32:$desired, GPR32:$new)>;
|
||||
|
||||
Reference in New Issue
Block a user