llvm-project/llvm/test/CodeGen/Mips/msa
Roman Lebedev ec6b91b665 [MIPS] For vectors, select `add %x, C` as `sub %x, -C` if it results in inline immediate
Summary:
As discussed in https://reviews.llvm.org/D62341#1515637,
for MIPS `add %x, -1` isn't optimal. Unlike X86 there
are no fastpaths to matearialize such `-1`/`1` vector constants,
and `sub %x, 1` results in better codegen,
so undo canonicalization

Reviewers: atanasyan, Petar.Avramovic, RKSimon

Reviewed By: atanasyan

Subscribers: sdardis, arichardson, hiraditya, jrtc27, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D66805

llvm-svn: 372254
2019-09-18 19:34:41 +00:00
..
2r.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
2r_vector_scalar.ll [mips][msa] Fix infinite loop for mips.nori.b intrinsic 2019-09-11 11:16:06 +00:00
2rf.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
2rf_exup.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
2rf_float_int.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
2rf_fq.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
2rf_int_float.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
2rf_tq.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3r-a.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3r-b.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3r-c.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3r-d.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3r-i.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3r-m.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3r-p.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3r-s.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3r-v.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3r_4r.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3r_4r_widen.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3r_splat.ll
3rf.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3rf_4rf.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3rf_4rf_q.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3rf_exdo.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3rf_float_int.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3rf_int_float.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
3rf_q.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
arithmetic.ll [MIPS] For vectors, select `add %x, C` as `sub %x, -C` if it results in inline immediate 2019-09-18 19:34:41 +00:00
arithmetic_float.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
avoid_vector_shift_combines.ll [MIPS MSA] Avoid some DAG combines for vector shifts 2019-02-20 13:42:44 +00:00
basic_operations.ll [mips] Remove -allow-deprecated-dag-overlap flag from tests. NFC 2018-10-03 22:02:23 +00:00
basic_operations_float.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
bit.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
bitcast.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
bitwise.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
bmzi_bmnzi.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
cc_without_nan.ll [mips] Handle missing CondCodes 2018-08-22 09:34:44 +00:00
compare.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
compare_float.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
elm_copy.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
elm_cxcmsa.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
elm_insv.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
elm_move.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
elm_shift_slide.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
emergency-spill.mir [Alignment] Use llvm::Align in MachineFunction and TargetLowering - fixes mir parsing 2019-09-11 11:16:48 +00:00
endian.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
f16-llvm-ir.ll [mips] Support for +abs2008 attribute 2019-01-28 14:59:30 +00:00
fexuprl.ll
frameindex.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
i5-a.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
i5-b.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
i5-c.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
i5-m.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
i5-s.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
i5_ld_st.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
i8.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
i10.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
immediates-bad.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
immediates.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
inline-asm.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
llvm-stress-s449609655-simplified.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
llvm-stress-s525530439.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
llvm-stress-s997348632.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
llvm-stress-s1704963983.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
llvm-stress-s1935737938.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
llvm-stress-s2090927243-simplified.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
llvm-stress-s2501752154-simplified.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
llvm-stress-s2704903805.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
llvm-stress-s3861334421.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
llvm-stress-s3926023935.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
llvm-stress-s3997499501.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
llvm-stress-sz1-s742806235.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
msa-nooddspreg.ll
nori.b.ll [mips][msa] Fix infinite loop for mips.nori.b intrinsic 2019-09-11 11:16:06 +00:00
shift-dagcombine.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
shift_constant_pool.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
shift_no_and.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
shuffle.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
special.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
spill.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
vec.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00
vecs10.ll [mips] Explicitly select `mips32r2` CPU for test cases require 64-bit FPU. NFC 2019-07-09 15:48:05 +00:00